加入收藏 | 设为首页 | 会员中心 | 我要投稿 李大同 (https://www.lidatong.com.cn/)- 科技、建站、经验、云计算、5G、大数据,站长网!
当前位置: 首页 > 百科 > 正文

记录一次莫名其妙的坑

发布时间:2020-12-15 06:46:29 所属栏目:百科 来源:网络整理
导读:在工作中,我们使用 vue ,并且使用 vue-cli 来创建脚手架。业余时间玩一玩react,发现react也有自己的脚手架生成工具 create-react-app 简称 cra 于是兴致勃勃地用cra创建了一个简单的项目,我发现cra并没有自带 axios 这个库,那么我想引入一下 axios ,于

在工作中,我们使用vue,并且使用vue-cli来创建脚手架。业余时间玩一玩react,发现react也有自己的脚手架生成工具create-react-app简称cra

于是兴致勃勃地用cra创建了一个简单的项目,我发现cra并没有自带axios这个库,那么我想引入一下axios,于是我安装,并且在webpack的配置文件中使用Provideplugin这个插件:

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

这下稳了,我可以在我的js文件中肆意使用axios这个变量了:

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

结果报错,如下图:

WTF?这是什么鬼,我在vue里面这样用都是OK的啊。于是我去查了一下Provideplugin的文档,里面写的妥妥的:

Provideplugin插件可以让你不需要使用require语句或者import语句就自由使用变量,哪怕不声明也可以使用。

没毛病啊。很头疼,我webpack插件也没用错,可是就是undefined。
晚上去打了2局DOTA,然后回来洗个澡,又看了看,看到控制台有这么一句话:

Search for the keywords to learn more about each error.

看来no-undef就是这个keyword了,赶紧搜一下:

我特么突然明白了,这个报错是eslint的报错,不是运行时的报错。赶紧给代码加上一条eslint的语句来关闭检查

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

再运行呢,OK ,稳了!接下来可以去学学eslint这个工具,看起来很好玩~

(编辑:李大同)

【声明】本站内容均来自网络,其相关言论仅代表作者个人观点,不代表本站立场。若无意侵犯到您的权利,请及时与联系站长删除相关内容!

    推荐文章
      热点阅读