使用自定义指令并依赖viewContentLoaded事件运行时,我遇到了一些不一致...
以下是问题的“简单”版本:
var myApp = angular.module('myApp',[]);
myApp.directive('someDirective', function() {
return {
restrict: 'E',
scope: {},
controller: 'MyCtrl',
templateUrl: 'my-template.html'
});
myApp.controller('MyCtrl', ['$scope', function($scope) {
$scope.$on('$viewContentLoaded', function() {
alert('Consumed viewContentLoaded...');
}
}]);
事件viewContentLoaded get在页面刷新和初始页面加载时触发 像这样使用:
<div ng-controller="MyCtrl" ng-include="my-template.html"></div>
但是,当用作页面刷新或初始页面加载时,它不会被触发 指令:
<some-directive></some-directive>
任何想法为什么会出现不一致的行为?
答案 0 :(得分:0)
我认为这个问题与一个开放的bug有关:
https://github.com/angular/angular.js/issues/1213
实际上没有解决这个问题。
建议的解决方法:
myApp.run(['$route', angular.noop]);
使用最新的AngularJs(1.2.10)时,失败,出现某种“注射器错误”。