webpack的使用

    xiaoxiao2021-03-25  141

    1.1全局安装webpack

    npm install webpack -g

    1.2创建文件夹

    1.在你本地创建该项目的文件夹 -mywebpack 2.在文件夹中右键+shift打开npm命令窗口 npm -init(填写个人管理信息)填写完成会出现一个package.json文件 注意:如果使用到npm的包,最好联网现下,因为npm版本更新的比较快,里面的包也会跟着升级

    1.3创建.gitignore文件

    最好用webstorm打开该文件夹,创建.gitignore文件(不要忘记前边的点),该文件是为了防止文件丢失,改点东西,它能创建一个git版本号。

    1.4创建dist文件夹目录和src文件夹目录

    dist用来存放输出文件使用,src用来存放源文件使用,子目录有js文件夹,css文件夹,images文件夹,入口文件index.html

    1.5创建webpack配置文件webpack.develop.config.js和wbpack.publish.config.js

    在webpack文件夹下配置这两个文件,该文件是项目的开发环境配置文件和项目部署环境配置文件 注意:第一次构建项目时最好在这两个文件中都写上注释

    1.6本地下载webpack文件

    npm install webpack -save-dev

    1.7在webpack.develop.config.js项目开发环境配置文件中编写配置文件

    / 这是最基本的一个配置文件 // 编写配置文件,要有最基本的文件入口和输出文件配置信息等 // 里面还可以加loader和各种插件配置使用 var path = require('path'); module.exports = { entry:path.resolve(__dirname,'src/js/app.js'), output: { path: path.resolve(__dirname, dist/'bundle.js'), filename: 'bundle.js', }, }

    注意:在index.html中引入的是输出的文件名,而不是输入的文件名

    1.8执行webpack

    webpack --config webpack.develop.config.js 因为自己修改了配置文件名,所以这里需要自己写上文件名,如果没有修改文件名,则webpack会自动去本地寻找一个叫webpack.config.js的文件,默认去执行。 执行完毕之后,webpack帮我打包了一个叫bundle.js的文件.

    2.1webpack -h

    会出现webpack的所有命令

    2.2解决问题:每次写完代码都要用很多命令去运行webpack(很多情况下是记不住那么多代码的)

    解决方案:在npm的package.json配置文件中加两个选项 scripts": { "test": "echo \"Error: no test specified\" && exit 1", "develop": "webpack --config webpack.develop.config.js", "publish": "webpack --config webpack.publish.config.js" },在命令中启动npm run develop就可以启动webpack构建文件。

    2.3解决问题:每次新增代码或者修改代码都需要重新运行npm run develop,很麻烦

    解决方案:有webpack-dev-server这样一个插件 1.安装webpack-dev-server     npm i webpack-dev-server  -save-dev  本地安装 2.在配置文件中修改“develop”: { "scripts": { "develop": "webpack-dev-server --config webpack.develop.config.js --devtool eval --progress --colors --hot --content-base src", "publish": "webpack --config webpack.publish.config.js", "watch": "webpack --config webpack.develop.config.js --watch --hot" } }这个插件帮我们启动了一个本地服务localhost:8080,--devtool eval为我的代码创建源地址,有任何报错的时候可以让我更加精确地定位到文件和行号,--progress显示合并代码的进度,--colors --hot命令行中的颜色 --content-base src(src指的是自己的输入目录)所有构建代码在服务器中可以访问到以src根目录启动的一个服务器。 3.再次运行npm run develop 运行完之后,再次访问页面不能本地访问,需要在地址栏输入localhost:8080访问页面。(运行完npm不要返回,保持当前的状态,当内容变化时,webpack就会自动构建了,成功之后,刷新页面即可,改完代码最好手动ctrl+s保存一下)

    (1)webpack-dev-server生成bundle.js文件是在内存中的,并没有实际生成

    (2)如果引用的文件夹中已经有bundle.js就不会自动刷新了,你需要先把bundle.js文件手动删除

    2.4解决问题:如何实现浏览器自动刷新

    解决方案:webpack -dev-server可以解决 把webpack.develop.config.js文件中的entry改为数组 var path = require('path'); module.exports = { entry:[ 'webpack/hot/dev-server', 'webpack-dev-server/client?http://localhost:8080', path.resolve(__dirname,'src/js/app.js') ], output: { path: path.resolve(__dirname, 'deploy'), filename: 'bundle.js', }, module: { loaders: [ { test: /\.css$/, loader: "style!css" } ] } }项目开发环境文件已修改,需要重新启动webpack   npm run  develop
    转载请注明原文地址: https://ju.6miu.com/read-9834.html

    最新回复(0)