Vue 中使用 jQuery

来源:互联网 发布:淘宝商家虚假发货 编辑:程序博客网 时间:2024/05/29 10:42

题主Vue小白,入门demo时想在其中使用jQuery(当然可能是不推荐的做法哈,毕竟俩儿的风格不一样,但万一你就需要呢^^),结果遇到问题,最终倒腾解决。

编译报错:$ is undefined or no-undef '$' is not defined

假设你已经使用vue-cli搭建好了开发的脚手架,接下来,看下面。。。

安装 jQuery,项目根目录下运行以下代码

npm install jquery --save

webpack配置

在项目根目录下的build目录下找到webpack.base.conf.js文件,在开头使用以下代码引入webpack,因为该文件默认没有引用

var webpack = require('webpack')

然后在module.exports中添加一段代码

// 原有代码resolve: {  extensions: ['.js', '.vue', '.json'],  alias: {'vue$': 'vue/dist/vue.esm.js','@': resolve('src')  }},// 添加代码plugins: [  new webpack.ProvidePlugin({$: "jquery",jQuery: "jquery",jquery: "jquery","window.jQuery": "jquery"  })],// 原有代码module: {  rules: [// ......  ]}

然后许多其他解决办法到此就说在main.js里导入就可以了,然而题主照着做了。main.js里导入jQuery:

import 'jquery'

在Vue组件里使用 $ or jQuery 写了操作dom的代码。接着启动项目:

npm run dev

但是编译却报错了:

http://eslint.org/docs/rules/no-undef '$' is not defined orhttp://eslint.org/docs/rules/no-undef 'jQuery' is not defined

咋回事呢???

eslint 检查

机智的朋友肯定想到跟eslint有关,没错,这时候需要做的下一步就是要修改根目录下.eslintrc.js文件了,在改文件的module.exports中,为env添加一个键值对 jquery: true 就可以了,也就是:

env: {  // 原有  browser: true,  // 添加  jquery: true}

再次 npm run dev ,OK了,没报错,赶紧去组件里试一下吧,console.log($(‘选择器’)) ,你会发现成功使用jQuery获取到了DOM。

原创粉丝点击