0
我重构我所有的代码来实现,如本文中Scaling Angular Apps描述顶级指令,我不知道如何访问我的解析值内:接入解决从状态参数,而不控制器指令
$stateProvider
.state('login', {
url : '/login',
template : '<sr-login-view></sr-login-view>'
})
.state('main', {
url : '/main',
template : '<sr-main-view></sr-main-view>',
resolve : {
directiveConfig : function (Directives) {
return Directives.getConfig('mainScreen');
}
}
});
指令:
angular.module('ElectronClient')
.directive('srMainView', function (directiveConfig //doesn't work) {
return {
restrict : 'E',
require : 'srMainScreen',
scope : {},
templateUrl : 'source/app/directives/main/main_view.html',
controller : function ($scope, directiveConfig //doesn't work) {
//code
},
link : {
post : function (scope, element, attributes, mainViewController) {
}
}
}
});
有一些解决方法呢?具有“顶级”指令的全部要点是不将控制器定义在状态中,但似乎解析参数仅传递给附属于该状态的控制器
在'main'状态下添加控制器,然后将解析'directiveConfig'传递给指令隔离范围。 –
我试图找到任何其他方式 –
但我想我不得不诉诸于...:p –