Vue中正确使用jQuery的方法
题主Vue小白,入门demo时想在其中使用jQuery(当然可能是不推荐的做法哈,毕竟俩儿的风格不一样,但万一你就需要呢_^^_),结果遇到问题,最终倒腾解决。
编译报错:$isundefinedorno-undef'$'isnotdefined
假设你已经使用vue-cli搭建好了开发的脚手架,接下来,看下面。
1.NPM安装jQuery,项目根目录下运行以下代码
npminstalljquery--save
2.webpack配置
在项目根目录下的build目录下找到webpack.base.conf.js文件,在开头使用以下代码引入webpack,因为该文件默认没有引用。
varwebpack=require('webpack')
然后在module.exports中添加一段代码,
//原有代码 resolve:{ extensions:['.js','.vue','.json'], alias:{ 'vue$':'vue/dist/vue.esm.js', '@':resolve('src') } }, //添加代码 plugins:[ newwebpack.ProvidePlugin({ $:"jquery", jQuery:"jquery", jquery:"jquery", "window.jQuery":"jquery" }) ], //原有代码 module:{ rules:[ //...... ] }
然后许多其他解决办法到此就说在main.js里导入就可以了,然而题主照着做了。
main.js里导入jQuery
import'jquery'
在Vue组件里使用$orjQuery写了操作dom的代码
接着启动项目
npmrundev
但是编译却报错了:
http://eslint.org/docs/rules/no-undef'$'isnotdefinedor http://eslint.org/docs/rules/no-undef'jQuery'isnotdefined
咋回事呢???
3.eslint检查
机智的朋友肯定想到跟eslint有关,没错,这时候需要做的下一步就是要修改根目录下.eslintrc.js文件了,在改文件的module.exports中,为env添加一个键值对jquery:true就可以了,也就是:
env:{ //原有 browser:true, //添加 jquery:true }
再次npmrundev,OK了,没报错,赶紧去组件里试一下吧,console.log($('选择器')),你会发现成功使用jQuery获取到了DOM。
以上就是本文的全部内容,希望对大家的学习有所帮助,也希望大家多多支持毛票票。