创建一个名为webpackstudy文件夹

目录结构如下

main.jssrc目录下

右键webpack_study文件夹打开终端

终端输入npm inity

得到结果如下

继续输入 npm i jquery -S 得到以下结果

左侧webpack_study目录下会生成一个这样的文件

main.jsindex.html分别中输入以下代码测试

打开index.html文件查看控制台

提示以下错误

Uncaught SyntaxError: Cannot use import statement outside a module (at main.js:1:1)

查阅发现是ES6语法浏览器无法解析问题解决方法是在index.html引入main.jsscript标签里增加type=”module

但是浏览器依旧报错

Uncaught TypeError: Failed to resolve module specifier “jquery“. Relative references must start with either “/”, “./”, or “../”.

这是因为ES6新语法浏览器识别,所以尝试使用webpackmain.js作为入口文件,在webpack_study->dist目录下创建bundle.js去作为输出文件然后通过webpack打包引入

终端输入webpack ./src/main.js ./dist/bundle.js

报错

查阅发现应该webpack配置问题

当前目录下的node_modules下的package.json修改,增加”dev“和”build“:

然后修改webpack.config.js文件,而webpack打包时并没有生成,于是在webpack_study下创建一个然后将其中内容写为如下配置:

然后终端输入webpack 测试

成功运行,接着输入webpack ./src/main.js ./dist/bundle.js

检查bundle.js,发现webpack已经成功输出内容bundle.js中:

最后index.html链接main.js的script标签src修改dist目录下的bundle.js。

保存刷新index.html界面检查控制台

main.js文件中一共输出两个内容,均成功输出结果,$是一个回传函数,而window.$ 结果undefined原因是因为导入的$不暴露全局环境下。

成功在main.js中使用ES6语法导入jquery并且利用webpack打包浏览器识别

这样的优点在于可以避免使用script标签引入很多静态资源拖慢网页可以所有的js代码都放在一个main.js中,如果需要用到一些库的函数,直接import导入,再通过webpack输出bundle.js文件中,调用时只用到这一个js文件

原文地址:https://blog.csdn.net/NZMBELLA/article/details/128840206

本文来自互联网用户投稿,该文观点仅代表作者本人,不代表本站立场。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任

如若转载,请注明出处:http://www.7code.cn/show_48186.html

如若内容造成侵权/违法违规/事实不符,请联系代码007邮箱suwngjj01@126.com进行投诉反馈,一经查实,立即删除

发表回复

您的电子邮箱地址不会被公开。 必填项已用 * 标注