我想在下面概括我的状态代码,以传入一个字符串作为装入的参数,该参数将称为模块,然后在装入调用中对其进行解析以进行延迟装入。简单地添加一个字符串将出错,因为Angular认为它是提供者,并触发了未知的提供者异常。我怎样才能实现这个目标?function load ($ocLazyLoad, $q, $stateParams, module){ var deferred = $q.defer(); try{ $ocLazyLoad.load(module).then(function(){ deferred.resolve(); }); } catch (ex){ deferred.reject(ex); } return deferred.promise;} $stateProvider .state('action', { name: 'action', url: "/actionitems", resolve: { loadDependencies: ['$ocLazyLoad', '$q', '$stateParams', load] }, templateUrl: '/app/tool/action/ActionItems.html' });
1 回答

慕莱坞森
TA贡献1810条经验 获得超4个赞
您需要创建一个constant提供程序。您可以执行以下操作:
angular.module('my-module').constant('myConstant', 'my-value');
然后在您的状态提供者中:
$stateProvider
.state('action', {
name: 'action',
url: "/actionitems",
resolve: {
loadDependencies: ['$ocLazyLoad', '$q', '$stateParams', 'myConstant', load]
},
templateUrl: '/app/tool/action/ActionItems.html'
});
function load ($ocLazyLoad, $q, $stateParams, myConstant, module){
// myConstant has the value 'my-value'
...
}
添加回答
举报
0/150
提交
取消