Angularjs 我可以强制以角度渲染指令的顺序吗?
我可以强制角度指令的渲染顺序吗 我的HTML:Angularjs 我可以强制以角度渲染指令的顺序吗?,angularjs,angularjs-directive,angular-ui-router,Angularjs,Angularjs Directive,Angular Ui Router,我可以强制角度指令的渲染顺序吗 我的HTML: <body> <my-menu></my-menu> <ui-view></ui-view> </body> 该州有一个控制器: var someStateController = function($scope) { $scope.$emit('someCustomEvent', argument); }; 但是,在初始加载时,someStateCon
<body>
<my-menu></my-menu>
<ui-view></ui-view>
</body>
该州有一个控制器:
var someStateController = function($scope) {
$scope.$emit('someCustomEvent', argument);
};
但是,在初始加载时,
someStateController
在myMenuController
之前运行,因此侦听器不会捕获第一个$scope.$emit()
。如果我导航到另一个也调用$scope.$emit()
的页面,它就会工作。我可以使用$timeout
,但是有一个延迟。你试过设置优先级吗?@pankajparkar这很有效。只是不是初始加载。@aw04我该怎么做呢?您可以在指令上设置优先级(数字)(因此在菜单中,优先级为xxx),但仔细想想,我认为这对您的情况没有帮助。只有在同一DOM元素上有多个指令时才有意义。我已经重新创建了您的设置,但侦听器似乎在初始加载时工作。你能修改它以显示你的问题吗?
var someStateController = function($scope) {
$scope.$emit('someCustomEvent', argument);
};