я видел много подобных вопросы на SO, но эти решения не работают для меня :(
О моем сайте и приложении: Бэкэнда WordPress с JSon апи, угловатое приложение на . mysite.lc/catalog/
страница
мой контроллер:
var catalogControllers = angular.module('catalogControllers', []);
catalogControllers.controller('catalogCtrl', ['$scope', '$state', '$stateParams',
function ($scope, $state, $stateParams) {
$log.debug(angular.toJson($stateParams, true));
$http.get(url).success(function(data) {
console.log('data is loaded');
});
}
]);
мои настройки маршрутизации:
var catalogApp = angular.module('catalogApp', ['ui.router', 'ngResource', 'ngSanitize', 'catalogControllers']);
catalogApp.config(['$stateProvider', '$urlRouterProvider', function($stateProvider, $urlRouterProvider) {
$stateProvider
.state('home', {
url: '?producttype&colors&models',
controller: 'catalogCtrl',
onEnter: function() {
console.log('route entered');
}
});
$urlRouterProvider.otherwise("/");
}]);
Так что, когда я иду в URL-адрес, как http://mysite.lc/catalog/#/?producttype=4&colors=5,7,9&models=17
консоль показывает {}
из catalogCtrl, затем data is loaded
от catalogCtrl $ http.get, и только после этого route entered
Если я действительно войти его таким образом (в конфигурации маршрутизатора) controller: function($stateParams) { console.log($stateParams); }
ничего не выводит.
У вас никогда не было http-ответа в вашем вопросе. Можете ли вы предоставить это, пожалуйста? –
Да, этим «у меня были некоторые не упоминаемые вызовы $ http.get в коде выше», я имел в виду, что это полная моя ошибка в том, что вы не предоставляете никаких подробностей о '$ http.get' :( Итак, это должно быть написано как' i didn «Я упоминаю $ http.get звонки в коде выше», извините за смущение. Также я буду обновлять вопрос и отвечать с более подробной информацией. –