记一次webpack -- 提高开发效率优化

(一)优化resolve.alias配置

resolve.alias配置通过别名来将原导⼊路径映射成⼀个新的导⼊路径,减少查找过程

resolve: {
    alias: {
      // 引入vue的时候,直接指向vue打包好之后的文件
      // 比如import Vue from 'vue/dist/vue.common.js'--> import Vue from 'vue'
      vue$: "vue/dist/vue.esm.js",
      // 减少查找过程 起别名
      "@": path.resolve(__dirname, "./src")
    }
},

(二)优化resolve.extensions配置

在导⼊语句没带⽂件后缀时,webpack会⾃动带上后缀后,去尝试查找⽂件是否存在

resolve: {
    // 在导⼊语句没带⽂件后缀时,webpack会⾃动带上后缀后,去尝试查找⽂件是否存在。
    extensions: [".js", ".vue", ".json"],
},
后缀列表应尽量的少,不能滥用,会增加文件匹配的时间

(三)CSS文件的处理

1.使⽤less或者sass当做css技术栈

$ npm install less less-loader --save-dev
{
  test: /\.less$/,
  use: ["style-loader", "css-loader", "less-loader"]
}

2.使⽤postcss为样式⾃动补⻬浏览器前缀

$ npm i postcss-loader autoprefixer -D

新建postcss.config.js

module.exports = {
  plugins: [
  require("autoprefixer")({
    overrideBrowserslist: ["last 2 versions", ">1%"]
  })]
};

webpack.config.js

{
  test: /\.less$/,
  include: path.resolve(__dirname, "./src"),
  use: [
  "style-loader",
  {
    loader: "css-loader",
    options: {}
  },
  "less-loader",
  "postcss-loader"
  ]
}

(四)development vs Production模式区分打包

在这里插入图片描述

npm install webpack-merge -D

webpack.dev.conf.js

const merge = require("webpack-merge")
const commonConfig = require("./webpack.common.js")
const devConfig = {
// ...
}
module.exports = merge(commonConfig,devConfig)

基于命令走不同的配置文件区分
package.json

"scripts":{
	"dev":"webpack-dev-server --config ./build/webpack.dev.conf.js",
	"build":"webpack --config ./build/webpack.prod.conf.js"
}
  • 2
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 0
    评论

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

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

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值