2017-06-22 6 views
0

Ich habe Dokumente über templateUrl gelesen und es dauert nur $ stateParams als Funktionsparameter, also habe ich templateProvider überprüft und docs sagt, dass es nur HTML-Ansichten ('view.html') zurückgeben kann.Angularjs dynamische Route VorlageUrl Änderung

PROBLEM

Ich verwende mvc 5 und in templateUrl ich zu meiner Mvc-View-Controller verweisen gerade. Aber jetzt möchte ich die Vorlage dynamisch basierend auf aufgelöstem Versprechen ab Werk auswählen. Das Ergebnis davon ist, dass die gewünschte Ansicht leer ist. Ich bekomme leere Sicht und Konsole ist sauber. Ive überprüft das Ergebnis console.log($templateRequest('groupView/addNewGroup')); (Bildschirm oben) und ich habe HTML, aber meine Sicht ist leer.

link.

Ist es möglich, auf den mvc-Controller zu verweisen, anstatt '.html'-Datei in templateProvider zurückzugeben?

MEIN CODE

.state('addNewGroup', { 
    url: '/group/new', 
    resolve: { 
     isUserLoggedIn: function ($templateRequest, checkPermission) { 
      checkPermission.checkPermission() 
       .then(function (result) { 
        if (!result) { 
         return $templateRequest('groupView/login'); 
        } else {       
         console.log($templateRequest('groupView/addNewGroup')) 
         return $templateRequest('groupView/addNewGroup'); 
        } 
       }); 
     } 
    }, 
    views: { 
     "leftPanel": { 
      templateUrl: '/groupView/simpleLeftPanel', 
      controller: 'simpleLeftPanelCtrl' 

     }, 
     "content": { 
      templateProvider: function (isUserLoggedIn) { 
       return isUserLoggedIn; 
      }, 
     } 
    }, 
}); 

Antwort

0

Ich brauchte nur Rendite zu erzielen, bevor check, wie folgt aus:

return checkPermission.checkPermission() 
    .then(...).. 

Nun, es ist alles das Arbeiten groß.