2016-10-25 4 views
0

Ich benutze Ui-Router zum Routing meiner eckigen App. Ich habe die Routing-Konfiguration eingestellt, wollte aber den Controller nicht als Syntax verwenden. Ich verwende folgende Syntax:Controller bekommt keinen Anruf, wenn sein Zustand sich ändert

.state('blog',{ 
     url: '/blog', 
     templateUrl: '/templates/blog.html', 
     controller: 'BlogController' 
    }) 

jedoch die Vorlage in meine ui-Ansicht aufgerufen wird, aber ich BlogController nicht genannt zu werden. Ich habe console.log() in meinem BlogController verwendet, aber in meiner Konsole habe ich nichts gesehen. Hier ist mein BlogController.js

Wie Sie sehen können, verwende ich einen Service, um Daten mit $ http aufrufen. Unten ist mein PostService:

app.service('PostService', function ($http) { 

this.getPost = function() { 
    return $http({ 
     method : 'GET', 
     url : 'http://domain.com/wp-json/wp/v2/posts' 
    }) 
    .then(function(response){ 
     return response.data; 
    }, function(error){ 
     return error; 
    }); 
}; 
}); 

Ich denke, das ist das Problem im Zusammenhang mit dem Service-Aufruf. Ich habe einen Beitrag über die Auflösung der Eigenschaft in State-Methode von UI-Router gelesen. Ich habe das versucht, aber nichts hat funktioniert. Kann mir bitte jemand helfen, mich davon zu befreien?

+0

Bitte stellen Sie sicher, wenn Sie BlogController.js in der Haupt enthalten haben HTML-Datei, und stellen Sie auch sicher, wenn Sie es als ein Modul registriert haben. – aliasav

+0

Ich habe BlogController mit require ('./ BlogController') aufgenommen. Es hat prima funktioniert. Aber als ich die Routing-Konfiguration von ngRoute zu ui-router änderte, funktioniert es nicht. –

+0

Entfernen Sie das 'abschließende Komma 'in der Controller-Deklaration' app.controller (' BlogController ', Funktion ($ scope, PostService) {' – Sravan

Antwort

0

Die Erklärung des ui-router module ist falsch

var app = angular.module('mySiteApp', [require('angular-ui-router')])

sein sollte,

var app = angular.module('mySiteApp', ['ui.router'])

Check this link for cors errors

+0

Sie haben Recht, hinteres Komma ist ein Fehler, aber da OP dies nicht gesehen hat, wurde die Datei möglicherweise gar nicht – aliasav

+0

enthalten, es sind viele dieser Probleme. – Sravan

+0

Es ist ein Typfehler. Ich habe keinen Fehler in meiner Konsole. –

Verwandte Themen