我正在使用angluarJS进行扩展,现在我有一个问题,完全烧毁了我的大脑。
我想抓取数据,解析数据并将解析后的数据存储在localStorage的后台页面中,然后在浏览器操作中获取该数据并在弹出的html中显示该数据。现在我想抓
,反复解析和存储数据,如http://developer.chrome.com/extensions/alarms.html所述,我使用chrome.alarms api来做到这一点,但它不能正常工作。chrome.alarms api与angularJS无法正常工作
这是我在后台控制器代码:
app.controller('bgCtrl', function AlfredCtrl($scope, courseService) {
var setLocal = function(){
console.log("fired inside setLocal(), but out of getCourses()");
courseService.getCourses().then(function (events){
console.log("fired inside of getCourses()");
localStorage.setItem("deadlines", JSON.stringify(events.deadlines));
})
};
var delay = 1 ;
chrome.alarms.create("scheduleRequest", {periodInMinutes: delay});
chrome.alarms.onAlarm.addListener(function(alarm){
if(alarm.name == "scheduleRequest"){
console.log("fired out of setLocal()");
setLocal();
}
});
});
功能getCourses()从服务BG返回。当它被调用时,它会返回解析的数据。
当我在Chrome浏览器开发工具进行检查,它一再显示:
fired out of setLocal(). bgCtrl.js:32
fired inside setLocal(), but out of getCourses(). bgCtrl.js:7
也就是说函数courseService.getCourses()未在all.That被callec是我有问题。
请帮助我!
你还对这个问题有兴趣吗? – Xan 2015-03-12 11:28:42
我对它很感兴趣。 – saric 2016-04-18 13:20:59