在工作中,我们使用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这个工具,看起来很好玩~
原文地址:https://www.jb51.cc/react/302652.html
版权声明:本文内容由互联网用户自发贡献,该文观点与技术仅代表作者本人。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如发现本站有涉嫌侵权/违法违规的内容, 请发送邮件至 dio@foxmail.com 举报,一经查实,本站将立刻删除。