Webpack 配置开发环境与正式环境

简介: Webpack 配置开发环境与正式环境

我在上一篇文章:【Webpack4 创建项目以及打包一个JS文件】 已经搭建过环境以及创建过项目了。

1、创建一个文件夹 webpack,通过命令行 cd 到该文件夹

$ cd /webpack

2、进行初始化

$ npm init

3、如果没有安装 webpack、webpack-cli 可以看顶部文章进行安装。

4、安装 webpack-dev-server

$ npm install webpack-dev-server --save-dev

5、安装完成之后,在当前目录创建一个 main.js 文件,里面随便写的内容:

console.log('dzm');

6、之前文字我们是通过新建一个 webpack.config.js 来进行配置的,其实现在区分环境也差不多是同理,这里我记录两种方式


1)在 package.js 中添加 scripts 配置 serve 跟 build,然后两者分别对应不同的配置文件,配置里面可以单独针对编写配置,这种方式是通过不同配置文件直接进行打包:

"scripts": {
    "serve": "webpack --config build/dev.js",
    "build": "webpack --config build/pro.js",
    "test": "echo \"Error: no test specified\" && exit 1"
 },

dev.js 与 pro.js 里面也只需要一样的写不同配置,可以直接在两份文件中输出不同的打包文件名进行测试:

var config = {
  // 入口文件
  entry: {
    main: './main.js'
  },
  // 输出配置
  output: {
    // 输出得到的文件,文件名可以随意写
    filename: 'xyq.js'
  }
};

文件效果:


2)在 package.js 中添加 scripts 配置 serve 跟 build,通过 webpack-dev-server 传入不同的参数进行区分,当然也可以像上面一样建两个文件进行区分:

"scripts": {
    "serve": "webpack-dev-server --env development --config build/conf.js",
    "build": "webpack-dev-server --env production --config build/conf.js",
    "test": "echo \"Error: no test specified\" && exit 1"
},

然后我们新建在一个 conf.js 文件,可以在里面进行处理,我这边就用到了合并配置文件的操作,所以需要安装一下 webpack-merge

$ npm install webpack-merge --save-dev

conf.js 里面是这么判断使用的,我这边还是保持这 第一种方案的 配置文件区分方式,通过判断环境拿到不同配置文件的配置之后在与公用配置进行合并

// 开发配置
const devConfig = require('./dev')
// 正式配置
const proConfig = require('./pro')
// 合并插件 需要安装 npm install webpack-merge --save-dev
const marge = require('webpack-merge')
// 公用配置
var pubConfig = env => {
  // 这里也可以通过判断 env 进行区分
  return {
    // 入口文件
    entry: {
      main: './main.js'
    },
    // 输出配置
    output: {
      // 输出得到的文件,文件名可以随意写
      filename: 'xyq.js'
    }
  }
};
// 根据判断进行区分环境
module.exports = env => {
  // 这里的 env 就是 pageage.js 里面 --env 后面配置好的参数 development 与 production
  let config = env === 'production' ? proConfig : devConfig
  // 通过判断环境之后得到的配置与公用配置合并
  return merge(pubConfig(env), config)
};

文件效果:

7、上面选一种进行测试配置好之后,运行命令

$ npm run serve
// 或者
$ npm run build

相关文章
|
1月前
|
前端开发
在Webpack配置文件中,如何配置loader以处理其他类型的文件,如CSS或图片
在Webpack配置文件中,通过设置`module.rules`来配置loader处理不同类型的文件。例如,使用`css-loader`和`style-loader`处理CSS文件,使用`file-loader`或`url-loader`处理图片等资源文件。配置示例:在`rules`数组中添加对应规则,指定`test`匹配文件类型,`use`指定使用的loader。
|
1月前
|
缓存 前端开发 JavaScript
Webpack与Babel的进阶配置与优化
通过以上的进阶配置和优化策略,可以更好地发挥`Webpack`与`Babel`的功能,提高项目的性能和开发效率。
|
1月前
|
JavaScript 前端开发 UED
如何配置 Webpack 进行代码分离?
通过以上方法,可以有效地配置Webpack进行代码分离,根据项目的具体需求和场景选择合适的方式,能够显著提高应用的性能和用户体验。在实际应用中,还可以结合其他优化技术,进一步优化Webpack的打包结果和应用的加载速度。
50 5
|
1月前
|
前端开发 JavaScript
webpack相关配置
以上只是Webpack配置的一些常见部分,实际应用中还可以根据具体的项目需求和场景进行更复杂和细致的配置,以满足不同的构建和优化要求。
44 2
|
1月前
|
缓存 JavaScript 前端开发
配置 Webpack 进行代码分离的常见方法有哪些?
通过以上常见方法,可以根据项目的具体需求和场景,灵活地配置Webpack进行代码分离,从而提高应用的性能和加载速度,优化用户体验。
34 3
|
1月前
|
缓存 前端开发 JavaScript
前端性能优化:Webpack与Babel的进阶配置与优化策略
【10月更文挑战第28天】在现代Web开发中,Webpack和Babel是不可或缺的工具,分别负责模块打包和ES6+代码转换。本文探讨了它们的进阶配置与优化策略,包括Webpack的代码压缩、缓存优化和代码分割,以及Babel的按需引入polyfill和目标浏览器设置。通过这些优化,可以显著提升应用的加载速度和运行效率,从而改善用户体验。
58 6
|
1月前
|
缓存 前端开发 JavaScript
前端工程化:Webpack与Gulp的构建工具选择与配置优化
【10月更文挑战第27天】在现代前端开发中,构建工具的选择对项目的效率和可维护性至关重要。本文比较了Webpack和Gulp两个流行的构建工具,介绍了它们的特点和适用场景,并提供了配置优化的最佳实践。Webpack适合大型模块化项目,Gulp则适用于快速自动化构建流程。通过合理的配置优化,可以显著提升构建效率和性能。
52 2
|
JavaScript 前端开发
Webpack搭建ES6开发环境(部分摘自网络)
Webpack搭建ES6开发环境(部分摘自网络)
122 0
Webpack搭建ES6开发环境(部分摘自网络)
|
3月前
|
JavaScript
webpack打包TS
webpack打包TS
138 60
|
2月前
|
缓存 前端开发 JavaScript
Webpack 打包的基本原理
【10月更文挑战第5天】