Webpack 打包

Posted G_whang

tags:

篇首语:本文由小常识网(cha138.com)小编为大家整理,主要介绍了Webpack 打包相关的知识,希望对你有一定的参考价值。

1.什么是webpack

Webpack 是一个前端资源加载/打包工具。它将根据模块的依赖关系进行静态分析,然后将这些模块按照指定的规则生成对应的静态资源。
简单来说,就是把多种静态资源 js、css、less 转换成一个静态文件,减少了页面的
请求。

2.webpack 安装

全局安装命令

npm install -g webpack webpack-cli

安装成功后查看版本

webpack -v

3.引入js

创建common.js

exports.info = function (str) 
    document.write(str);
    

创建 utils.js

exports.add = function (a, b) 
    return a + b;
    

创建main.js引入 两个工具js

const common = require('./common');
const utils = require('./utils');
common.info('Hello world!' + utils.add(100, 200));

新建入口程序 webpack.config.js

const path = require("path"); //Node.js内置模块
module.exports = 
entry: './src/main.js', //配置入口文件
output: 
path: path.resolve(__dirname, './dist'), //输出路径,__dirname:当前文件所在路
径
filename: 'bundle.js' //输出文件


以上配置的意思是:读取当前项目目录下js文件夹中的main.js(入口文件)内容,分析资源依赖,把相关的js文件打包,打包后的文件放入当前目录的dist文件夹下,打包后的js文件名为bundle.js

命令启动

webpack #有黄色警告
webpack --mode=development #没有警告


dist下面就多了压缩后的js文件

创建 index.html 引入压缩后的js文件

<script src="./dist/bundle.js"></script>

4.引入css

1、安装style-loader和 css-loader

npm install --save-dev style-loader css-loader

2、css文件夹中创建css文件

body
background:pink;

3、修改main.js 引入css文件

require('./style.css');

4、修改webpack.config.js

const path = require("path"); //Node.js内置模块
module.exports = 
entry: './js/main.js', //配置入口文件
output: 
path: path.resolve(__dirname, './dist'), //输出路径,__dirname:当前文件所在路径
filename: 'bundle.js' //输出文件
,
module: 
    rules: [
    
    test: /\\.css$/, //打包规则应用到以css结尾的文件上
    use: ['style-loader', 'css-loader']
    
  ]
  

运行

以上是关于Webpack 打包的主要内容,如果未能解决你的问题,请参考以下文章

初涉Webpack

14webpack之loader

编写一个webpack loader

第835期Webpack 的静态资源持久缓存

webpack打包Js文件

vue项目打包gzip压缩