Angularjs 共享ui路由器与状态模板中的角度组件解析数据
在我的angular应用程序中,我有一个非常标准的Angularjs 共享ui路由器与状态模板中的角度组件解析数据,angularjs,angular-ui-router,angular-components,Angularjs,Angular Ui Router,Angular Components,在我的angular应用程序中,我有一个非常标准的组件 此组件将在模板内使用,状态如下,我已使用ui路由器定义: $stateProvider .state('proverbs', { abstract: true, url: '/proverbs/:lang', template: '<navbar></navbar><div ui-view class="absolute full-sized anim-i
组件
此组件将在模板内使用,状态如下,我已使用ui路由器定义:
$stateProvider
.state('proverbs', {
abstract: true,
url: '/proverbs/:lang',
template: '<navbar></navbar><div ui-view class="absolute full-sized anim-in-out" data-anim-speed="444" data-anim-sync="false"/></div>',
resolve: {
proverbs: ['$stateParams', '$q', 'dataFactory', function ($stateParams, $q, dataFactory) {
let deferred = $q.defer();
let url = CONFIG.api + '/proverbs/' + $stateParams.lang;
dataFactory.getData(url).then(function (data) {
deferred.resolve(data);
});
return deferred.promise;
}]
}
})
当访问状态时,我得到以下错误:
Error: [$injector:unpr] Unknown provider: proverbsProvider <- proverbs
错误:[$injector:unpr]未知提供程序:谚语provider我猜ui路由器会将这些解析注入通过stateProvider定义的控制器,但我不确定。您可以为状态定义一个迷你控制器,该状态在控制器的作用域上公开注入,然后将它们直接提供给navbar指令。将数据存储在服务中,并将该服务注入组件
Error: [$injector:unpr] Unknown provider: proverbsProvider <- proverbs