1
我試圖根據一天中的時間更改間隔的延遲。每隔30分鐘,我想自動(並隨機)從預定義列表中推送一篇博文,而不會觸發UI事件。但是,在夜晚,我想減慢推動速度(改變延遲),以防止「阻塞」用戶界面。我的代碼:
var campaign_post_ids = [
// some array
];
var today = new Date();
var hourNow = today.getHours();
var stop = $interval(function() {
}, 100);
function pushBlog(blog_id) {
blog_id = campaign_post_ids[Math.floor(Math.random() * campaign_post_ids.length)];
Blog.push_up(blog_id); //calling the push_up function in the Blog service
}
if (hourNow > 9 && hourNow < 23) {
$interval.cancel(stop);
$interval(pushBlog, 60000 * 30); //every 30 minutes
} else {
$interval.cancel(stop);
$interval(pushBlog, 60000 * 120); //every 120 minutes
}
推高工作正常,但是,延遲的變化不起作用;在夜間,它每30分鐘(而不是120分鐘)不斷推高。我究竟做錯了什麼?
啊,是的,宣佈取消間隔是非常有意義的......謝謝! – RVBuuren
是否有必要清除$間隔?我在某個地方讀到,在同一時間永遠不會有兩個間隔? – RVBuuren
在vanillja js和角度實現中,您可以根據需要創建多個區間。例如:https://jsfiddle.net/57nn8xrz/ –