webpack 其他配置

一、webpack处理HTML内嵌图片

1.处理效果

未使用loader时,会出现路径错误,图片不显示的情况;

经过loader处理后,图片能正常显示

2.安装

命令:cnpm install --save-dev html-loader

3.配置config文件

二、使用sourcemap调试

1.关于sourcemap

Sourcemap是为了解决实际运行代码(打包后的)出现问题时无法定位到开发环境中的源代码的问题。

2. 5个基本类型

(1)eval

每个模块都使用 eval() 执行,每一个模块后会增加sourceURL来关联模块处理前后的对应关系。如下图

由于会映射到转换后的代码,而不是映射到原始代码(没有从 loader 中获取 source map),所以不能正确的显示行数。因为不需要生成模块的sourcemap,因此打包的速度很快。

(2)source-map

source-map会为模块生成独立的soucemap文件。

打包后的模块在模块后面会对应引用一个.map文件,同时在打包好的目录下会生成相应的.map文件。如下图

(3)Inline

与source-map不同,增加inline属性后,不会生成独立的.map文件,source map 转换为 DataUrl 后添加到 bundle 中。如下所示:

(4)cheap

cheap属性在打包后同样会为每一个模块生成.map文件,但是与source-map的区别在于cheap生成的.map文件会忽略原始代码中的列信息,也不包含loader的sourcemap。

(5)module

包含了loader模块之间的sourcemap,将 loader source map 简化为每行一个映射。

3.使用sourcemap调试

(1)js调试

(2)css调试

调试css时需要将压缩css的插件注释掉

Css sourcemap设置

4.devtool选项

三、区分生产环境和开发环境

1.概念

开发环境和生产环境的构建目标差异很大。在开发环境中,我们需要具有强大的、具有实时重新加载或热模块替换能力 和 localhost server。而在生产环境中,我们的目标则转向于关注更小的 bundle,以及资源的优化,以改善加载时间。所以我们通常建议为每个环境编写彼此独立的 webpack 配置。

2.安装

npm install --save-dev webpack-merge

3.配置

(1)拆分文件

在这里我们可以将webpack.config.js拆分为三个文件,分别是webpack.common.conf.js、webpack.dev.conf.js和webpack.prod.conf.js。、

webpack.common.conf.js是放一些我们公用的配置,比如入口entry、出口output、常用loader以及插件等。

webpack.dev.conf.js是在开发环境上的配置,比如devServer配置、模块热替换等方便开发的配置

webpack.prod.conf.js是在生产环境上的配置,比如提取分离css、压缩css和js等

(2)拆分后的文件配置

webpack.common.conf.js

webpack.dev.conf.js

webpack.prod.conf.js

(3)修改script

修改package.json文件中的script

--config可以指定使用的配置文件

  • 0
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 0
    评论
webpack的完整配置包括以下几个方面: 1. 安装webpackwebpack-cli:首先,你需要在项目中安装webpackwebpack-cli。你可以使用以下命令来安装它们:`npm install --save-dev webpack webpack-cli`。这样可以确保在项目中使用webpack。 2. 创建webpack配置文件:接下来,你需要创建一个名为`webpack.config.js`的文件,并在其中编写webpack配置。这个配置文件是一个JavaScript模块,它需要导出一个包含配置选项的对象。在这个配置文件中,你可以定义入口文件、输出文件、加载器和插件等。 3. 配置入口文件和输出文件:在webpack配置中,你需要指定一个或多个入口文件和一个输出文件。入口文件是你项目中的主要文件,它将作为webpack的起点。输出文件webpack生成的打包文件,它将包含所有的模块和依赖关系。 4. 配置加载器和插件:webpack提供了丰富的加载器和插件,用于处理不同类型的文件和执行其他任务。加载器用于处理非JavaScript文件,比如将CSS转换为JavaScript模块,或者将ES6代码转换为ES5代码。插件可以用于执行额外的任务,比如压缩代码、提取公共模块或生成HTML文件。 5. 配置开发服务器和热模块替换:webpack还提供了开发服务器和热模块替换功能,以便在开发过程中实时预览和更新代码。你可以在配置中指定服务器的地址、端口和代理等选项,以及启用热模块替换。 6. 配置其他选项:除了上述内容之外,你还可以配置其它选项,比如优化输出、指定模块查找路径、设置环境变量等。 总结起来,webpack的完整配置包括安装webpackwebpack-cli、创建配置文件配置入口文件和输出文件配置加载器和插件、配置开发服务器和热模块替换,以及其他选项的配置。你可以根据你的项目需求和具体情况来编写和调整这些配置项。

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值