记录一次莫名其妙的坑

在工做中,咱们使用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这个工具,看起来很好玩~

相关文章
相关标签/搜索