webpack安装及简单实践

本文详细介绍了如何安装和使用webpack,包括全局和局部安装步骤,以及如何配置webpack.config.js文件实现模块打包。通过创建项目文件结构,设置入口和输出文件,解决缓存问题,以及引入clean-webpack-plugin插件自动清理旧的打包文件,帮助前端开发者更好地管理和构建复杂项目。
摘要由CSDN通过智能技术生成

随着前端的不断发展,涌现出了很多实践方法来处理复杂的前端工程项目,让前端工作人员专注于业务实现,从繁琐的工程管理中解放了出来。其中最明显的就是模块化,模块化可以使得复杂的程序细化为各个小的文件。webpack是一个现代JavaScript应用程序的静态模块打包器。当webpack构建项目的时候,会根据模块之间的依赖关系,将所有模块打包成一个或多个bundle。webpack并不会强制你使用某种模块化方案,而是通过兼容所有的模块化方案让你无痛接入项目。

怎么安装webpack呢?

一、安装node.js

检查你的电脑是否已经安装了node和npm,如果没有安装,可以去node.js官网下载安装包进行下载

二、安装webpack
  • 1、全局安装webpack:运行电脑的cmd,进行webpack安装命令的输入:
npm install webpack webpack-cli -g
  • 2、局部安装webpack: 可以直接在你的工程项目中局部进行安装webpack
npm install webpack webpack-cli --save-dev
  • 3、安装完了之后可以通过以下命令查看是否安装成功:
webpack -v

简单使用webpack

  • 1、创建一个文件夹,如:webpack-test,来放置你的工程代码
  • 2、在文件夹(webpack-test)下输入以下命令来创建package.json
npm init -y
  • 3、在文件夹webpack-test下创建 config文件夹,并创建 webpack.config.js文件放在config中
  • 4、在文件夹webpack-test下创建 src文件夹, src下创建 js文件夹,并创建 index.js文件放在js中,在index.js文件中写一些JavaScript代码
  • 5、配置webpack.config.js文件
const path = require('path');
module.exports = {
    entry: './src/js/index.js',//需要打包的文件
    output: {
        filename: '[name].js',//输出的文件名叫什么,生成的文件名也叫什么

        // ‘../dist’ --- 相对位置, 表示针对 webpack.config.js 文件的位置再上一级,即与config文件夹同级
        // ‘./dist’ 、 'dist' --- 相对位置 ,表示针对 webpack.config.js文件的位置是同一级,即与webpack.config.js文件同级
        path: path.resolve(__dirname, '../dist'),//指定生成的文件目录
      
    }
}
  • 6、运行webpack,对index.js文件进行打包: webpack --config config/webpack.config.js
  • 7、配置package.json来简化webpack打包命令 :“start”: “webpack --config config/webpack.config.js”,然后直接运行 npm start
{
  "name": "es-practise",
  "version": "1.0.0",
  "description": "",
  "main": "config/webpack.config.js",
  "scripts": {
    "start": "webpack --config config/webpack.config.js",
    "test": "echo \"Error: no test specified\" && exit 1"
  },
  "keywords": [],
  "author": "",
  "license": "ISC",
  "devDependencies": {
    "clean-webpack-plugin": "^3.0.0"
  }
}
  • 8、配置webpack.config.js文件的打包输出配置项,让webpack打包后生成哈希文件,以此解决缓存问题
const path = require('path');//调用nodejs中的路径
module.exports = {
  entry: './src/js/index.js',//需要打包的文件
  output: {
    // filename: '[name].js',//输出的文件名叫什么,生成的文件名也叫什么
    filename: '[name].[chunkhash:10].js',//增加10位哈希,解决缓存问题---注意:只有当需要打包的文件修改了再重新打开才能生成新的打包文件,否则不会重新打包,还是之前的打包文件

    // ‘../dist’ --- 相对位置, 表示针对 webpack.config.js 文件的位置再上一级,即与config文件夹同级
    // ‘./dist’ 、 'dist' --- 相对位置 ,表示针对 webpack.config.js文件的位置是同一级,即与webpack.config.js文件同级
    path: path.resolve(__dirname, '../dist'),//指定生成的文件目录
  }
}
  • 9、安装clean-webpack-plugin插件,用于每次打包前把旧的打包文件进行清理:npm install clean-webpack-plugin --save-dev ,然后进行webpack.config.js的配置
const path = require('path');//调用nodejs中的路径
const cleanWebpackPlugin = require('clean-webpack-plugin').CleanWebpackPlugin;//通过 clean-webpack-plugin插件删除输出目录中之前的文件

module.exports = {
  entry: './src/js/index.js',//需要打包的文件
  output: {
    // filename: '[name].js',//输出的文件名叫什么,生成的文件名也叫什么
    filename: '[name].[chunkhash:10].js',//增加10位哈希,解决缓存问题---注意:只有当需要打包的文件修改了再重新打开才能生成新的打包文件,否则不会重新打包,还是之前的打包文件

    // ‘../dist’ --- 相对位置, 表示针对 webpack.config.js 文件的位置再上一级,即与config文件夹同级
    // ‘./dist’ 、 'dist' --- 相对位置 ,表示针对 webpack.config.js文件的位置是同一级,即与webpack.config.js文件同级
    path: path.resolve(__dirname, '../dist'),//指定生成的文件目录
  },
  plugins: [
    new cleanWebpackPlugin()
  ]
}
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值