成人国产在线小视频_日韩寡妇人妻调教在线播放_色成人www永久在线观看_2018国产精品久久_亚洲欧美高清在线30p_亚洲少妇综合一区_黄色在线播放国产_亚洲另类技巧小说校园_国产主播xx日韩_a级毛片在线免费

資訊專欄INFORMATION COLUMN

import提升導(dǎo)致Fundebug報錯:“請配置apikey”

impig33 / 2064人閱讀

摘要:摘要解釋一下請配置報錯的原因。命令具有提升效果,會提升到整個模塊的頭部,首先執(zhí)行。自從年雙十一正式上線,累計處理了億錯誤事件,付費(fèi)客戶有金山軟件百姓網(wǎng)等眾多品牌企業(yè)。

摘要: 解釋一下“請配置apikey”報錯的原因。

部分Fundebug用戶使用import來導(dǎo)入js文件時,出現(xiàn)了"請配置apikey"的報錯,這是由于import提升導(dǎo)致的,下面我會詳細(xì)解釋一下這一點(diǎn)。

import提升

關(guān)于import提升,我們可以參考阮一峰的《ECMAScript 6 入門》。

import命令具有提升效果,會提升到整個模塊的頭部,首先執(zhí)行。

foo();

import { foo } from "my_module";

上面的代碼不會報錯,因為import的執(zhí)行早于foo的調(diào)用。這種行為的本質(zhì)是,import命令是編譯階段執(zhí)行的,在代碼運(yùn)行之前。

因此,即使我們把import語句寫在后面,它仍然會在其他語句之前執(zhí)行

import提升為何導(dǎo)致Fundebug報錯?

Fundebug用戶應(yīng)該清楚,在接入fundebug-javascript插件之后,需要配置apikey,如下:

import * as fundebug from "fundebug-javascript";
fundebug.apikey = "API-KEY";

假設(shè)我們還需要import一個test.js文件,這個文件會拋出一個Error,如下:

// test.js
throw new Error("test")

一切看起來沒有問題:

// main.js
import * as fundebug from "fundebug-javascript";
fundebug.apikey = "API-KEY";
import "./test"

但是,根據(jù)import提升,代碼的實(shí)際執(zhí)行順序如下:

// main.js
import * as fundebug from "fundebug-javascript";
import "./test"
fundebug.apikey = "API-KEY";

這種情況下,第二行代碼就會拋出錯誤,導(dǎo)致apikey復(fù)制語句不會執(zhí)行,從而導(dǎo)致報錯:“請配置apikey”。

這個問題并不需要解決

出于測試的目的,用戶會去import一個立即報錯的js文件,類似于前文提到的test.js。但是實(shí)際開發(fā)中,我們不可能這樣做,否則應(yīng)用會立即崩潰,更談不上部署了。

我們寫這篇博客的目的僅僅是解釋一下原因,并分享一個非常簡單的知識點(diǎn)“import提升”。

如何規(guī)避這個問題?

僅供參考,實(shí)際上沒有必要這樣做。

新建一個配置文件config.js,在這個文件中配置apikey:

fundebug.apikey = "API-KEY";

import配置文件:

// main.js
import * as fundebug from "fundebug-javascript";
import "./config"
import "./test"

這種情況下,配置apikey的語句被import代替了,也就不存在所謂"import提升"的問題,F(xiàn)undebug將可以正常報錯。

最后,感謝Fundebug用戶龍哥的反饋和協(xié)助!

參考

《ECMAScript 6 入門》

Fundebug文檔 - JavaScript錯誤監(jiān)控插件

關(guān)于Fundebug

Fundebug專注于JavaScript、微信小程序、微信小游戲、支付寶小程序、React Native、Node.js和Java線上應(yīng)用實(shí)時BUG監(jiān)控。 自從2016年雙十一正式上線,F(xiàn)undebug累計處理了10億+錯誤事件,付費(fèi)客戶有Google、360、金山軟件、百姓網(wǎng)等眾多品牌企業(yè)。歡迎大家免費(fèi)試用!

版權(quán)聲明

轉(zhuǎn)載時請注明作者Fundebug以及本文地址:
https://blog.fundebug.com/2019/02/26/import-cause-fundebug-apikey-error/

文章版權(quán)歸作者所有,未經(jīng)允許請勿轉(zhuǎn)載,若此文章存在違規(guī)行為,您可以聯(lián)系管理員刪除。

轉(zhuǎn)載請注明本文地址:http://systransis.cn/yun/102220.html

相關(guān)文章

  • [email protected]更新內(nèi)置錯誤處機(jī)制,Fundebug同步支持相應(yīng)錯誤監(jiān)控

    摘要:摘要的錯誤監(jiān)控插件同步支持異步錯誤監(jiān)控。此次更新,我們對的監(jiān)控插件做了相應(yīng)的更新,來更好地支持使用框架開發(fā)的應(yīng)用錯誤的監(jiān)控。程序運(yùn)行后,成功捕獲該錯誤總結(jié)更新到,對錯誤處理提供了更加強(qiáng)大的支持。 摘要: Fundebug 的 JavaScript 錯誤監(jiān)控插件同步支持 Vue.js 異步錯誤監(jiān)控。 Vue.js 從誕生至今已經(jīng) 5 年,尤大在今年 2 月份發(fā)布了重大更新,即Vue 2....

    DC_er 評論0 收藏0
  • Fundebug前端JavaScript插件更新至1.8.2,修復(fù)2個小BUG

    摘要:前端異常監(jiān)控插件更新至,修復(fù)了個小修復(fù)用戶行為中重復(fù)記錄請求的修復(fù)的為報錯的這個都不會影響功能,不過為了避免造成困擾,請大家及時更新插件。 摘要: 修復(fù)2個BUG,請大家及時更新。 showImg(https://segmentfault.com/img/remote/1460000019373421?w=900&h=383); Fundebug前端異常監(jiān)控服務(wù) Fundebug是專業(yè)...

    lifesimple 評論0 收藏0
  • 我是這樣搞懂一個神奇的BUG

    摘要:但是,不應(yīng)該啊我們是事先有做檢查的。一個請求成功返回,表示賬戶創(chuàng)建成功。自從年雙十一正式上線,累計處理了億錯誤事件,付費(fèi)客戶有陽光保險核桃編程荔枝掌門對微脈青團(tuán)社等眾多知名企業(yè)。 摘要: 通過分析用戶的行為,才想得到為什么會出現(xiàn)這種情況! 前兩天在BearyChat收到這樣的一個報警消息: 409 ?Conflict ? 平時很少遇到這樣的錯誤,貌似很嚴(yán)重的樣子,嚇得我趕緊查看到底發(fā)生...

    J4ck_Chan 評論0 收藏0
  • 詳解JavaScript之神奇的Object.defineProperty

    摘要:與當(dāng)與同時為時,屬性不能重新使用定義,嚴(yán)格模式下會報錯示例云麒報錯當(dāng)或者為時,屬性可以重新使用定義,這一點(diǎn)讀者不妨自行測試。 摘要: JavaScript有個很神奇的Object.defineProperty(),了解一下? =與Object.defineProperty 為JavaScript對象新增或者修改屬性,有兩種不同方式:直接使用=賦值或者使用Object.definePro...

    baishancloud 評論0 收藏0
  • 有瀏覽器的地方就有Fundebug

    摘要:已經(jīng)全面支持主流瀏覽器啦對于前端開發(fā)者,兼容各種瀏覽器是一件非常痛苦的事情。并且,同一個錯誤在不同瀏覽器下的,,,與都有可能不同。根據(jù)我們的初步估算,目前聚合算法能夠?qū)⒌闹貜?fù)錯誤成功聚合,這樣極大地提高了用戶分析錯誤的效率。 Fundebug已經(jīng)全面支持主流瀏覽器啦! 對于前端開發(fā)者,兼容各種瀏覽器是一件非常痛苦的事情。在搜索框中輸入關(guān)鍵字JavaScript瀏覽器兼容,結(jié)果是這樣的:...

    DangoSky 評論0 收藏0

發(fā)表評論

0條評論

最新活動
閱讀需要支付1元查看
<