記錄一次莫名其妙的坑

在工做中,咱們使用vue,而且使用vue-cli來建立腳手架。業餘時間玩一玩react,發現react也有本身的腳手架生成工具create-react-app簡稱cravue

因而興致勃勃地用cra建立了一個簡單的項目,我發現cra並無自帶axios這個庫,那麼我想引入一下axios,因而我安裝,而且在webpack的配置文件中使用Provideplugin這個插件:react

new webpack.ProvidePlugin({
    axios: 'axios'
}),

這下穩了,我能夠在個人js文件中肆意使用axios這個變量了:webpack

handleInput(event){
    this.setState({
       input:event.target.value
    })
    console.log(axios)
}

結果報錯,以下圖:ios

網頁報錯圖

控制檯報錯圖

WTF?這是什麼鬼,我在vue裏面這樣用都是OK的啊。因而我去查了一下Provideplugin的文檔,裏面寫的妥妥的:web

Provideplugin插件能夠讓你不須要使用require語句或者import語句就自由使用變量,哪怕不聲明也能夠使用。vue-cli

沒毛病啊。很頭疼,我webpack插件也沒用錯,但是就是undefined。
晚上去打了2局DOTA,而後回來洗個澡,又看了看,看到控制檯有這麼一句話:axios

Search for the keywords to learn more about each error.app

看來no-undef就是這個keyword了,趕忙搜一下:ide

搜索no-undef

我特麼忽然明白了,這個報錯是eslint的報錯,不是運行時的報錯。趕忙給代碼加上一條eslint的語句來關閉檢查工具

/* eslint-disable */
console.log(axios)

再運行呢,OK ,穩了!接下來能夠去學學eslint這個工具,看起來很好玩~

相關文章
相關標籤/搜索