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 
相关推荐
yuki_uix几秒前
深入理解 JavaScript Event Loop:从概念到实践的完整探索
前端·javascript
程序员阿峰1 分钟前
WebSocket 原理解析
前端
Lee川4 分钟前
JavaScript 继承进化史:从原型链的迷雾到完美的寄生组合
前端·javascript·面试
米饭同学i4 分钟前
微信小程序实现故事线指引动画效果
前端
阿懂在掘金7 分钟前
为什么写 Vue 强烈建议用 Setup?除了复用,更是代码组织
前端·vue.js
sorryhc17 分钟前
我让 AI 帮我写了一个 Code Agent!
前端·openai·ai编程
工边页字18 分钟前
面试官:请详细介绍下AI中的token,越详细越好!
前端·人工智能·后端
anyup18 分钟前
月销 8000+,uView Pro 让 uni-app 跨端开发提速 10 倍
前端·uni-app·开源
前端Hardy1 小时前
别再忽略 Promise 拒绝了!你的 Node.js 服务正在“静默自杀”
前端·javascript·面试
前端Hardy1 小时前
别再被setTimeout闭包坑了!90% 的人都写错过这个经典循环
前端·javascript·vue.js