#angularjs #angular-ui-router
#angularjs #angular-ui-router
Вопрос:
.state('cahonas.static_page', {
url: '*url',
templateUrl: '/static/templates/cahonas/static_pages/static_page.html',
controller: 'StaticPageCtrl',
resolve: {
metaTags: function (metaTagsResource, $stateParams) {
return metaTagsResource.get({
page_name: $stateParams.url.replace("//","")
}).$promise;
},
page: function (staticPageResource, $stateParams) {
return staticPageResource.get({
url: $stateParams.url.replace("//","")
}).$promise;
}
}
.factory('staticPageResource', function($resource) {
return $resource('/api/web/static_page/:url/');
})
пока это мой код. продолжайте натыкаться на «//», который приводит к ошибке, и я не могу в этом разобраться. кто-нибудь знает об этом?
Ответ №1:
Убедитесь, что все модули зависимостей, которые вы включаете в объявление модуля, указывают ( ngResource
и angular-ui-router
).
В объявлении фабрики используйте строгую инъекцию зависимости. В области конфигурации трудно найти проблему, потому что она не выдала никакой ошибки.
app.factroy('staticPageResource', ['$resource', function($resource) {
return $resource('/api/web/static_page/:url/');
}]);
А также попробуйте переименовать имя состояния, удалив .
Комментарии:
1. спасибо за ответ, приятель, но единственный способ заставить его работать — использовать маршрутизатор пользовательского интерфейса 0.2.11 с .slice(1).slice(0,-1) вместо замены. возможно, это неправильно со статическими страницами, указывающими html, но поскольку он работает, я больше не буду возиться