소스 검색

[fix] msg 定时刷新

wenliming 2 년 전
부모
커밋
db6133e7e9
2개의 변경된 파일13개의 추가작업 그리고 18개의 파일을 삭제
  1. 2 0
      src/logic/background/fetch/twitter.js
  2. 11 18
      src/logic/background/twitter.js

+ 2 - 0
src/logic/background/fetch/twitter.js

@@ -83,6 +83,7 @@ export async function fetchAllMessageInfo(params = {}) {
     return new Promise(function (resolve, reject) {
         if(!token) {
             resolve({});
+            return;
         }
         let _url = `${baseAPIUrl}/message/getStat`
         fetch(_url, {
@@ -119,6 +120,7 @@ export async function fetchReadTaskAllMsg(params = {}) {
     return new Promise(function (resolve, reject) {
         if(!token) {
             resolve({});
+            return;
         }
         let _url = `${baseAPIUrl}/message/readAllMsgByType`
         fetch(_url, {

+ 11 - 18
src/logic/background/twitter.js

@@ -222,39 +222,32 @@ export function hideBadge() {
 
 export async function setMessageCount () {
     const { accessToken: token = '', uid = '' } = await getChromeStorage('userInfo') || {}
-    alarmFun();
     if(token) {
         getMessageInfo();
-        // setInterval(() => {
-        //     getMessageInfo();
-        // }, 10000);
-        // 60000
+        createAlarm();
     }
 }
 
-function alarmFun() {
-    var count = 0;
-    var alarmInfo = {
-        //1分鐘之後開始(該值至少大於1) 
+function createAlarm() {
+    let alarmInfo = {
+        //1分鐘之後開始(該值不能小於1) 
         delayInMinutes: 1, 
         //與上方等同的寫法是 
-        // when : Date.now() + 6000,
-        //開始後每一分鐘執行一次(該值至少大於1) 
+        // when : Date.now() + n,
+        //開始後每一分鐘執行一次(該值不能小于1) 
         periodInMinutes : 1 
     };
 
     //每次加載就清空定時器
     chrome.alarms.clearAll();
-
-    //創造定時器
-    chrome.alarms.create('testAlarm',alarmInfo);
-    console.log("onAlarm-1",);
+    
     chrome.alarms.onAlarm.addListener(function(alarm) {
-        //計算定時器觸發次數
-        console.log("onAlarm-" , ++count, alarm);
-
+        console.log("onAlarm-", alarm);
         getMessageInfo();
     });
+
+    //創造定時器
+    chrome.alarms.create('denetChromeAlarm',alarmInfo);
 }
 
 export  function getMessageInfo () {