Programim dhe zhvillim, javascript, python, php, html

@ dhe named@ nuk funksionon në të njëjtat pamje të gjendjes me zgjidhje

Unë kam një shtet të quajtur 'indeks' që, në varësi të pamjes së ui-së në faqe, shfaq informacione të ndryshme dhe ka Url shabllone të ndryshme dhe ndajnë të njëjtën URL:

    $stateProvider.state('index', {
        url: '/',
        views: {
            'all@': {
                templateUrl: '/templates/partials/all/index',
                controller: function(){
                    console.log('main');
                }
            },
            '@': {
                templateUrl: '/templates/partials/home/index',
                controller: Controllers.Index,
                controllerAs: 'academia',
                resolve: {
                    templates: Preload.go(),
                    academia: ['Info', (Academia: Academia.Services.Info) => {
                        return Academia.get();
                    }],
                    plans: ['Planner', (Planner: ngPlanner.Planner) => {
                        return Planner.init();
                    }]
                }
            }
        }
    });

kur faqja është e ngarkuar me një <div ui-view></div>, ajo funksionon siç synohet (përputhet me rregullin '@'). por kur faqja ngarkohet me <div ui-view="all"></div> nuk ka.

Një plunkr që tregon problemin http://plnkr.co/edit/a2SWbB?p=preview

Zgjidhja nga @ e paemërtuar nuk duhet të ndërhyjë në pamjen all@. Zgjidhja aktuale po refuzohet sepse nuk i përket pamjes aktuale (pasi nuk ka pamje të paemërtuar kur faqja ngarkohet). Është një gabim, apo po bëj diçka të gabuar?


Përgjigjet:


1

Në këto ditë, zbatimi UI-Router drejtohet nga menaxhmenti shtetëror. Dhe pavarësisht nga fakti, se ka disa zëra/kërkesa për të ndarë vendosmërinë e pikëpamjeve (epo, jo pamja e prindit kundrejt pamjes së fëmijës - por kjo diskutohet më poshtë) ... Unë do të thoja , sjellja aktuale në pyetjet dhe përgjigjet e përshkruara më sipër është thjesht e saktë.

Së pari, cili është problemi në pyetjen e mësipërme? Në përgjithësi, ekzistojnë dy ose më shumë pikëpamje të vëllezërve dhe motrave, me përkufizimet e tyre të vendosura:

views: {
    'view1': {
          ....
          resolve : { // could fail
        }
    },
    'view2': {
        ...
        resolve:    { // could fail as well
    ...

Çfarë është shteti?

Një gjendje është një grup cilësimesh, që përfaqësojnë gjendjen. (tingëllon si deklaratë vetë-provuese, por unë jam serioz). Të gjitha cilësimet kanë të bëjnë me përcaktimin e gjendjes, për një gjendje specifike.

Mund të përdorim më shumë pamje për ta përfaqësuar atë (p.sh. titulli dhe përmbajtja).
Mund të përdorim disa deklarata të zgjidhjes (për të gjitha pikëpamjet e vëllezërve, për disa prej tyre) mbështesin këto pikëpamje.
Kemi ende vetëm NJË shtet.

Dhe kjo eshte. Është gjithçka ose asgjë. Gjendja është një, një grup cilësimesh, të cilat të gjitha duhet të punojnë/zgjidhen - ose i gjithë shteti po dështon.

Një histori tjetër: prindi - fëmija

Ekzistojnë gjithashtu disa kërkesa për të lejuar që pamja prind të jepet pasi të zgjidhen të gjitha gjërat e tij. Pse? Aktualisht, nëse lundrojmë drejtpërdrejt në gjendjen child, të gjitha/të dyja zgjidhjet duhet të zgjidhen përpara se gjendja të inicohet, pamjet të jepen.

Kjo mund të përmirësohet vërtet. Ka kuptim. Dhe me sa mbaj mend, është planifikuar të ndodhë në publikimet e mëvonshme (Betohem se e kam parë këtë në një nga komentet e anëtarit të ekipit të UI-Router - por nuk mund ta gjej).

Është skenar i ndryshëm. Sepse 1) ne mund të shkojmë te prindi (pamja e listës) ​​së pari. Dhe pastaj 2) zgjidhni fëmijën (detaj). Në këtë skenar mund të ndodhë vërtet që lista po funksionon, detajet dështojnë.

Pra, të shkosh drejtpërdrejt te fëmija duhet të bëjë prindin, më pas të dështojë në një fëmijë... Por kjo është histori ndryshe nga vëllai ose motra e përshkruar më sipër.

Sugjerime:

Sugjerimi im do të ishte, mbani në resolve vetëm gjëra që janë thelbësore, DUHET absolute për një shtet. Zhvendosni pjesën tjetër në shërbimet e injektuara nga Kontrollorët. Ky është sugjerimi dhe mënyra ime...

09.11.2014
  • faleminderit për përgjigjen e shpjeguar tërësisht, ka kuptim, pasi është një rrugëzim i bazuar në gjendje, url-të janë opsionale. kthehemi te bazat ;) 10.11.2014
  • hej @RadimKöhler edhe une kam nje situate te ngjashme, kam nja dy ore qe i shkul floket, a mund te kesh nje maksimum? stackoverflow.com/questions/26857023/ 11.11.2014
  • @jack.the.ripper e kam parë problemin tuaj... por nuk gjeta ndonjë gjë të dyshuar.. Do të përpiqem të vëzhgoj... dhe t'ju njoftoj, por në këtë moment thjesht nuk e di ;( më fal. .. por po punohet tani! 11.11.2014
  • Materiale të reja

    Masterclass Coroutines: Kapitulli-3: Anulimi i korutinave dhe trajtimi i përjashtimeve.
    Mirë se vini në udhëzuesin gjithëpërfshirës mbi Kotlin Coroutines! Në këtë seri artikujsh, unë do t'ju çoj në një udhëtim magjepsës, duke filluar nga bazat dhe gradualisht duke u thelluar në..

    Faketojeni derisa ta arrini me të dhënat false
    A e gjeni ndonjëherë veten duke ndërtuar një aplikacion të ri dhe keni nevojë për të dhëna testimi që duken dhe duken më realiste ose një grup i madh të dhënash për performancën e ngarkesës...

    Si të përdorni kërkesën API në Python
    Kërkesë API në GitHub për të marrë depot e përdoruesve duke përdorur Python. Në këtë artikull, unë shpjegoj procesin hap pas hapi për të trajtuar një kërkesë API për të marrë të dhëna nga..

    Një udhëzues hap pas hapi për të zotëruar React
    Në këtë artikull, do të mësoni se si të krijoni aplikacionin React, do të mësoni se si funksionon React dhe konceptet thelbësore që duhet të dini për të ndërtuar aplikacione React. Learning..

    AI dhe Psikologjia — Pjesa 2
    Në pjesën 2 të serisë sonë të AI dhe Psikologji ne diskutojmë se si makineritë mbledhin dhe përpunojnë të dhëna për të mësuar emocione dhe ndjenja të ndryshme në mendjen e njeriut, duke ndihmuar..

    Esencialet e punës ditore të kodit tim VS
    Shtesat e mia të preferuara - Git Graph 💹 Kjo shtesë është vërtet e mahnitshme, e përdor përpara se të filloj të punoj për të kontrolluar dy herë ndryshimet dhe degët më të fundit, mund të..

    Pse Python? Zbulimi i fuqisë së gjithanshme të një gjiganti programues
    Në peizazhin gjithnjë në zhvillim të gjuhëve të programimit, Python është shfaqur si një forcë dominuese. Rritja e tij meteorike nuk është rastësi. Joshja e Python qëndron në thjeshtësinë,..


    © 2024 albai.ru, Programim dhe zhvillim, javascript, python, php, html