webpack环境配置

1.首先安装 cross-env

javascript 复制代码
npm install cross-env --save-dev

在package.json里面配置 根据不同命令打包

javascript 复制代码
  "scripts": {
    "dev": "cross-env NODE_ENV=development webpack-dev-server --config webpack.config.dev.js",
    "dev:test": "cross-env NODE_ENV=test webpack-dev-server --config webpack.config.dev.js",
    "dev:prod": "cross-env NODE_ENV=production webpack-dev-server --config webpack.config.dev.js",
    "build:dev": "cross-env NODE_ENV=development webpack --config webpack.config.dev.js",
    "build:test": "cross-env NODE_ENV=test webpack --config webpack.config.dev.js",
    "build:prod": "cross-env NODE_ENV=production webpack --config webpack.config.prod.js",
    "build": "cross-env NODE_ENV=production webpack --config webpack.config.prod.js",
    "test": "echo \"Error: no test specified\" && exit 1"
  },

2.在webpack.common.js配置

javascript 复制代码
    const webpack = require('webpack');

plugins: [
        new webpack.DefinePlugin({
            'process.env.API_BASE_URL': (() => {
              switch (process.env.NODE_ENV) {
                case 'production':
                  return JSON.stringify('https://****************************');
                case 'test':
                  return JSON.stringify('https://****************************');
                default:
                  return JSON.stringify('http://****************************');
              }
            })()
          }),
        new HtmlWebpackPlugin({ 
            template: 'app.html',       // 指定模板html文件
            filename: 'index.html'      // 输出的html文件名称
        }),
        new VueLoaderPlugin()
    ],

3.在封装的axios配置同意前缀变量

javascript 复制代码
axios.defaults.baseURL = process.env.API_BASE_URL 
相关推荐
JuneXcy6 分钟前
11.Layout-Pinia优化重复请求
前端·javascript·css
子洋16 分钟前
快速目录跳转工具 zoxide 使用指南
前端·后端·shell
天下无贼!17 分钟前
【自制组件库】从零到一实现属于自己的 Vue3 组件库!!!
前端·javascript·vue.js·ui·架构·scss
CF14年老兵37 分钟前
✅ Next.js 渲染速查表
前端·react.js·next.js
司宸1 小时前
学习笔记八 —— 虚拟DOM diff算法 fiber原理
前端
阳树阳树1 小时前
JSON.parse 与 JSON.stringify 可能引发的问题
前端
让辣条自由翱翔1 小时前
总结一下Vue的组件通信
前端
dyb1 小时前
开箱即用的Next.js SSR企业级开发模板
前端·react.js·next.js
前端的日常1 小时前
Vite 如何处理静态资源?
前端
前端的日常1 小时前
如何在 Vite 中配置路由?
前端