在html文件templates\events.html
中有以下代码。为什么控制器中的代码被调用两次?
<div class="events-2colmn-l backgnd-cover" ui-sref="menu.music">
MUSIC
</div>
在route.js
.state('menu.music', {
url: '/music',
views: {
'side-menu21': {
templateUrl: 'templates/music.html',
controller: 'musicCtrl'
}
}
})
和Controller有当<div ...>MUSIC</div>
被触摸
.controller('musicCtrl', function ($scope, EventService) { // called twice when clicked
var allEvents = EventService.query({ category: "Music" });
allEvents.$promise.then(function (response) {
$scope.events = response;
});
})
控制器中的代码总是调用两次。如何确保点击时只调用一次?
这是否发生在您的应用程序的其他部分?只需确保将某些日志或断点放置在其他控制器中即可。 –
在你的整个应用程序中搜索'musicCtrl',并确保你没有像ng-controller那样的重复控制器在我搜索的events.html – Srijith
@Srijith上,并且只有一个'musicCtrl'控制器,一个模板music.html文件有'ng-controller =“musicCtrl”' – ca9163d9