webpack jquery已经全局引入 为啥还是提示$未定义

Posted

tags:

篇首语:本文由小常识网(cha138.com)小编为大家整理,主要介绍了webpack jquery已经全局引入 为啥还是提示$未定义相关的知识,希望对你有一定的参考价值。

webpack.config.js:
externals:
jquery: 'jQuery.noConflict()' //或者jquery:'jQuery'

使用:
var $ = require('jquery');
其它全局组件也一样的,但是看情况最好做一些处理,比如jquery本身套了一层factory来兼容amd等模块格式,你先把这些东西删掉,然后用webpack编译一遍,会自动打包一个webpack包装过的jquery,这个jquery也是可以直接<script>引用的,也可以require。
还有些看情况是否要改成commonJS的格式导出对象,就是module.exports=xx这样。
总之有一条,改动后先用webpack转换一遍库本身再用。
还有一些插件我觉得比较麻烦,理解了webpack的工作方式了稍微改下库的源码其实很简单。
参考技术A 引入jQuery框架要在引入外链式js文件之前引入,说白了就是调换一下引入顺序

vue-cli webpack全局引入jquery

1、首先在package.json里加入,

dependencies:{
 "jquery" : "^2.2.3"
} 

2、安装依赖 

npm install jquery --save-dev

3、在webpack.base.conf.js里加入

var webpack = require("webpack")

4、在module.exports的最后加入

  plugins: [new webpack.optimize.CommonsChunkPlugin(‘common.js‘), new webpack.ProvidePlugin({
    jQuery: "jquery",
    $: "jquery"
  })]

5、在main.js 引入

import $ from ‘jquery‘

6、然后重新 npm run dev  就可以了

以上是关于webpack jquery已经全局引入 为啥还是提示$未定义的主要内容,如果未能解决你的问题,请参考以下文章

vue+webpack 引入jquery

webpack全局引入jquery的方法

vue-cli webpack全局引入jquery

vue-cli webpack 中全局引入 jquery

如何在vue-cli webpack中全局引入jquery

vuecli3全局引入jquery