gpt4 book ai didi

angularjs - 在angularjs中从$interval调用一个函数

转载 作者:行者123 更新时间:2023-12-02 01:42:34 24 4
gpt4 key购买 nike

我想从 $interval 的超时时间调用一个函数。

angular.module('myApp').factory('myFactory',function($interval){

var stop;
return{
start : function() {
if(angular.isUndefined(stop)){
stop = $interval(function() {
function1();
}
, 30000);
}
},

function1 : function() {
console.log('In function1');
function2();
},

function2 : function() {
console.log('In function2');
}

}
});

我得到的错误是

TypeError: undefined is not a function

请告诉我可能是什么原因以及如何解决相同的问题

谢谢,ng-R

最佳答案

我建议将你的函数定义移到返回对象之外,请看下面的演示

var app = angular.module('app', []);
angular.module('app').factory('myFactory', function($interval) {

function start() {
$interval(function() {
function1();
}, 3000);
}


function function1() {
console.log('In function1');
function2();
}

function function2() {
console.log('In function2');
}




return {
start: start,
function1: function1,
function2: function2
};
});
app.controller('homeCtrl', function($scope, myFactory) {



myFactory.start();


});
<script src="https://ajax.googleapis.com/ajax/libs/angularjs/1.2.23/angular.min.js"></script>

<body>
<div ng-app="app">
<div ng-controller="homeCtrl">


</div>
</div>
</body>

关于angularjs - 在angularjs中从$interval调用一个函数,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/27617459/

24 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com