为了账号安全,请及时绑定邮箱和手机立即绑定

webpack深入与实战

难度中级
时长 3小时21分
学习人数
综合评分9.60
259人评价 查看评价
9.8 内容实用
9.5 简洁易懂
9.5 逻辑清晰
  •  npm 本地安装 html-webpack-plugin 插件后,在 webpack.dev.config.js 中配置 webpack 

    var htmlWebpackPlugin = require('html-webpack-plugin');

    先建立对插件的引用,commonjs 模块引用的写法

    plugins 对应值为一个数组

    如果要在 webpack 中使用插件,只需要在 webpack 的配置对象中增加一个 plugins 属性,值为数组类型,插件初始化(看插件自身的实现)


    查看全部
  • 需求背景: webpack 生成的打包文件 [name]-[hash].js 的文件名是不确定的,是否需要每次修改 index.html 中 js 引入的文件名? —— 利用 webpack 插件解决这个问题: 使用 html-webpack-plugin,先用 npm 本地开发安装 npm i html-webpack-plugin -D

    查看全部
  • filename: '[name]-[chunkhash].js'

    改为文件chunk自己的hash值,两个打包模块都不一样,这个hash值可以看做是文件自身的版本号,只有当这个文件发生改变的时候这个hash值才会发生变化 —— 这个特征在项目的上线过程中很有用,只上线那些被改过的文件


    查看全部
  • 将filename改为占位符,而不是用静态字符串: [name]-[chunk].js 

    输出如图

    查看全部
  • 官网中解释 multi entry

    如果多个chunk,filename中就使用占位符[name]、[hash]、[chunkhash]

    [name] 文件名

    [hash] 打包时的第一行显示hash

    [chunkhash] 每个chunk自己的hash值

    查看全部
  • entry 改为对象类型

    entry: {
    	main: './src/script/main.js',
    	a: './src/script/a.js'
    }

    但此时打包输出的只有一个 bundle.js 文件

    和 output 有关

    output: {
    	path: ('./dist/js'),
    	filename: 'bundle.js'
    }


    1. 不要在filename中指定绝对路径,因为在path中会指定,否则两个会混乱

    2. filename 是用于打包后的每个输出文件,当多输入时(entry为一个对象,多个chunk),同一个filename会被覆盖,最后只生成一个文件


    查看全部
  • entry 对一个对象 (似乎现在官网上没有提及 entry 可以是数组)

    查看全部
  • [0] 模块 multi main,把两个不相关的模块 main.js 和 a.js 打包在一起

    查看全部
  • 将webpack.dev.config.js中的 entry 字段设置为数组字符串:

    entry: ['./src/script/main.js','./src/script/a.js']

    打包结果如图,打包原因 single entry 单个入口,两个入口模块被打到multi main模块中,最后生成 bundle.js 文件

    查看全部
  • 在 npm package.json 中的 script 字段添加 webpack + 选项  的简写命令

    "webpack": "webpack --config webpack.dev.config.js --progress --display-modules --colors --display-reson"

    之后只需在命令行运行 npm run webpack即可,不再添加选项

    查看全部
  • 重命名 webpack.config.js 为 webpack.dev.config.js 后,运行 webpack 失效,因为默认的配置文件为 webpack.config.js,此时需要通过 --config 选项指定配置文件

    webpack --config webpack.dev.config.js

    查看全部
  • entry 打包的入口从哪个文件开始

    output 打包后的文件保存在什么地方

    path 打包后保存的目录

    filename 打包后的文件名


    查看全部
  • 命令行运行 webpack 时会默认读取根目录下的 webpack.config.js 或者是通过 --config 选项指定的文件

    该配置文件应该导出一个配置对象,如


    module.exports = {
        // configuration
    }


    注意是 exports 不是 export

    查看全部
  • 项目文件结构:

    dist 打包输出

    node_modules npm包

    src 打包源文件

        script 脚本文件

        style 样式文件

    index.html 原页面

    package.json

    webpack.config.js 


    查看全部
  • --display-reasons 

    展示打包这个模块的原因

    cjs require ./world.js [0] ./hello.js 1:0-21    hello.js中require这个world.js文件

    查看全部

举报

0/150
提交
取消
课程须知
1、对模块化开发有一些了解 2、使用过 node 对 npm 有基本的了解 3、对打包有一个基本的概念
老师告诉你能学到什么?
1、模块化的开发 2、webpack 的 CLI (命令行) 3、webpack 如何在项目中打包 4、webpack 如何处理项目中的资源文件

微信扫码,参与3人拼团

意见反馈 帮助中心 APP下载
官方微信
友情提示:

您好,此课程属于迁移课程,您已购买该课程,无需重复购买,感谢您对慕课网的支持!