Browse Source

[add][try catch]

zhangwei 2 years ago
parent
commit
8c88428444
1 changed files with 93 additions and 81 deletions
  1. 93 81
      src/logic/background/twitter.js

+ 93 - 81
src/logic/background/twitter.js

@@ -251,94 +251,106 @@ function sendActivetabMessage(message = {}) {
  */
 
 export function onInstalledCreateTab() {
-    getChromeCookie(LANDING_PAGE_JUMP_INFO, (res = {}) => {
-        setTimeout(() => {
-            // 安装成功埋点
-            Report.reportLog({
-                objectType: Report.objectType.chrome_extension_installed,
-                funcName: 'onInstalledCreateTab',
-                postId: res?.postId || ''
-            })
-        }, 5000)
-        let url = 'https://twitter.com/search?q=%23denet'
-        // jump_info
-        if (!res || !res.jump_type) {
-            chrome.tabs.create({
-                url
-            });
-            return
-        }
-        let created_detail = false
-        switch (String(res.jump_type)) {
-            // 普通红包
-            case 'red_packet':
-                if (res && res.postNickName && res.srcContentId) {
-                    created_detail = true
-                    url = `https://twitter.com/${res.postNickName}/status/${res.srcContentId}`
-                    chrome.tabs.create({
-                        url
-                    });
-                }
-                break
-            // 抽奖红包
-            case 'luck_draw':
-                if (res && res.postNickName && res.srcContentId) {
-                    created_detail = true
-                    url = `https://twitter.com/${res.postNickName}/status/${res.srcContentId}`
-                    chrome.tabs.create({
-                        url
-                    });
-                }
-                break
-            // NFT
-            case 'nft_info':
-                if (res && res.twitterAccount && res.nftProjectId) {
-                    created_detail = true
-                    url = `https://twitter.com/${res.twitterAccount}`
-                    chrome.tabs.create({
-                        url
-                    });
+    try {
+        getChromeCookie(LANDING_PAGE_JUMP_INFO, (res = {}) => {
+            setTimeout(() => {
+                if (!res) {
+                    res = {}
                 }
-                break
-            // NFT 组
-            case 'nft_group_info':
-                if (res && res.twitterAccount) {
-                    created_detail = true
-                    // setChromeStorage({ groupTabData: JSON.stringify({
-                    //     deTabVal: 'deGroupTab'
-                    // })})
-                    chrome.storage.local.set({
-                        groupTabData: JSON.stringify({
-                            deTabVal: 'deGroupTab'
-                        })
-                    }, (response) => {
+                // 安装成功埋点
+                Report.reportLog({
+                    objectType: Report.objectType.chrome_extension_installed,
+                    funcName: 'onInstalledCreateTab',
+                    postId: res.postId || ''
+                })
+            }, 5000)
+            let url = 'https://twitter.com/search?q=%23denet'
+            // jump_info
+            if (!res || !res.jump_type) {
+                chrome.tabs.create({
+                    url
+                });
+                return
+            }
+            let created_detail = false
+            switch (String(res.jump_type)) {
+                // 普通红包
+                case 'red_packet':
+                    if (res && res.postNickName && res.srcContentId) {
+                        created_detail = true
+                        url = `https://twitter.com/${res.postNickName}/status/${res.srcContentId}`
+                        chrome.tabs.create({
+                            url
+                        });
+                    }
+                    break
+                // 抽奖红包
+                case 'luck_draw':
+                    if (res && res.postNickName && res.srcContentId) {
+                        created_detail = true
+                        url = `https://twitter.com/${res.postNickName}/status/${res.srcContentId}`
+                        chrome.tabs.create({
+                            url
+                        });
+                    }
+                    break
+                // NFT
+                case 'nft_info':
+                    if (res && res.twitterAccount && res.nftProjectId) {
+                        created_detail = true
                         url = `https://twitter.com/${res.twitterAccount}`
                         chrome.tabs.create({
                             url
                         });
-                    })
-                }
-                break
-            // toolbox
-            case 'tool_box':
-                if (res && res.postNickName && res.srcContentId) {
-                    created_detail = true
-                    url = `https://twitter.com/${res.postNickName}/status/${res.srcContentId}`
-                    chrome.tabs.create({
-                        url
-                    });
-                }
-                break
-        }
+                    }
+                    break
+                // NFT 组
+                case 'nft_group_info':
+                    if (res && res.twitterAccount) {
+                        created_detail = true
+                        // setChromeStorage({ groupTabData: JSON.stringify({
+                        //     deTabVal: 'deGroupTab'
+                        // })})
+                        chrome.storage.local.set({
+                            groupTabData: JSON.stringify({
+                                deTabVal: 'deGroupTab'
+                            })
+                        }, (response) => {
+                            url = `https://twitter.com/${res.twitterAccount}`
+                            chrome.tabs.create({
+                                url
+                            });
+                        })
+                    }
+                    break
+                // toolbox
+                case 'tool_box':
+                    if (res && res.postNickName && res.srcContentId) {
+                        created_detail = true
+                        url = `https://twitter.com/${res.postNickName}/status/${res.srcContentId}`
+                        chrome.tabs.create({
+                            url
+                        });
+                    }
+                    break
+            }
 
-        if (created_detail == false) {
-            chrome.tabs.create({
-                url
-            });
-        }
+            if (created_detail == false) {
+                chrome.tabs.create({
+                    url
+                });
+            }
 
-        removeChromeCookie(LANDING_PAGE_JUMP_INFO)
-    })
+            removeChromeCookie(LANDING_PAGE_JUMP_INFO)
+
+        })
+    } catch (error) {
+        Report.reportLog({
+            objectType: Report.objectType.background_function_catch,
+            funcName: 'onInstalledCreateTab',
+            errMsg: error.message
+        });
+    }
 }
 
 /**