webpack引入jquery,报错`$(...).click(...) is not a function`

想使用webpack引入jquery,结果报错:
webpack.config.js中这样配置jquery

plugins:[
        new webpack.ProvidePlugin({
            $:"jquery",
            jQuery:"jquery",
            "window.jQuery":"jquery"
        })
    ]

在使用时这样使用:

    // import $ from 'jquery'
    var $ = require('jquery');
    
    $("#xxx").click(function(){
        console.log("click")
    })

结果报错$(...).click(...) is not a function

按照下面打印一下,结果如截图

console.log($("#xxx").length)
console.log($("#xxx"))

$("#xxx").click(function(){
    console.log("click")
})

图片描述

图片描述

阅读 5.8k
2 个回答

找到答案,应该把代码写在$(function(){})里面

我这里有个疑问,如果是引入jquery失败,那么报的错应该是$ is not a function吧,我怀疑,是不是新版jquery把click这API给废弃掉了之类的。

你可以试着把你的$('p')打印出来看看。

撰写回答
你尚未登录,登录后可以
  • 和开发者交流问题的细节
  • 关注并接收问题和回答的更新提醒
  • 参与内容的编辑和改进,让解决方法与时俱进