angularjs控制器执行两次
angularjs控制器执行两次
这里曾经有一个类似的问题,但它对我没有帮助。
我正在学习AngularJS,并注意到控制器被执行两次。
我有一个非常简单的示例,展示了这种行为在这里
我构建这个示例时,正在学习有关服务的内容,并且最初我认为是将服务注入控制器,但我注释了所有与服务相关的代码,控制器仍会执行两次。
我的示例运作正常,但我担心我在做错什么。
{{data1}} var app = angular.module('MyApp', []) app.service('Service1', function(){ return { ajxResponse1: 'dataFromService1' }; }); function MyCtrl($scope, Service1){ alert('Entering MyCtrl'); $scope.data1 = Service1.ajxResponse1; alert('Exiting MyCtrl'); }
admin 更改状态以发布 2023年5月21日
您的控制器在fiddle中运行了两次,因为angular被重复引用了(一次通过Framework & Extensions下拉菜单,另一次是作为External Resource)。
请查看更新的fiddle,我已经删除了External Resource,现在警报只会出现一次。
代码保持不变:
function MyCtrl($scope, Service1, Service2, Service3){ alert('Entering MyCtrl'); $scope.data1 = Service1.ajxResponse1; $scope.data2 = Service2.ajxResponse2; $scope.data3 = Service3.ajxResponse3; alert('Exiting MyCtrl'); }