zoukankan      html  css  js  c++  java
  • vue-cli 3.x 配置多环境

    思路:新建一个 process.env 变量。

    把 webpack 配置放到 vue.config.js 里面。

    如果根目录下没有该文件,新建。配置参考:https://cli.vuejs.org/zh/config/

    vue.config.js 配置参考:

    const webpack = require('webpack')
    const merge = require('webpack-merge')
    const env = process.env
    
    module.exports = {
      publicPath: './',
      outputDir: 'dist',
      assetsDir: 'static',
      productionSourceMap: false,
      configureWebpack: {
        output: {
          filename: '[hash].js'
        },
        plugins: [
          new webpack.DefinePlugin({
            'process.env': merge(env, {
              'AJAX_URL': '"' + process.env.AJAX_URL + '"'  // 新建 AJAX_URL 变量
            })
          })
        ]
      }
    }

    安装工具

    npm install --save-dev cross-env

    npm 命令加上 AJAX_URL 的赋值操作,

    dev:开发环境

    testing:灰度发布环境

    production:生产环境

    "scripts": {
        "dev:dev": "cross-env AJAX_URL=dev npm run dev", 
    "dev:test": "cross-env AJAX_URL=testing npm run dev",
    "dev:pro": "cross-env AJAX_URL=production npm run dev",
    "dev": "vue-cli-service serve",
    "build:dev": "cross-env AJAX_URL=dev npm run build",
    "build:test": "cross-env AJAX_URL=testing npm run build",
    "build:pro": "cross-env AJAX_URL=production npm run build",
    "build": "vue-cli-service build"
    }

    这样,就可以在业务代码里面使用 process.env.AJAX_URL 这个变量了。

    可以把ajax请求的配置放到一个文件里面

    let SITE_CONFIG
    
    if (process.env.AJAX_URL === 'production') {
      SITE_CONFIG = {                         // 生产环境
        baseUrl: '//www.example.com/',        // api接口请求地址
        cdnUrl: '//www.cdn.com/'              // cdn地址
      }
    } else if (process.env.AJAX_URL === 'testing') {
      SITE_CONFIG = {                         // 灰度发布环境
        baseUrl: '//test.example.com/',       // api接口请求地址
        cdnUrl: '//test.cdn.com/'             // cdn地址
      }
    } else if (process.env.AJAX_URL === 'dev') {
      SITE_CONFIG = {                         // 开发环境
        baseUrl: '//dev.example.com/',        // api接口请求地址
        cdnUrl: '//dev.cdn.com/'              // cdn地址
      }
    } else {                                   
      SITE_CONFIG = {                         // 本地环境
        baseUrl: '/',                         // api接口请求地址
        cdnUrl: '/'                           // cdn地址
      }
    }
    
    export default SITE_CONFIG

    以上。

    只需运行对应命令就可以实现平台切换了。

  • 相关阅读:
    普通网站迁移
    小程序注册流程
    批量抓取微信公众号的文章
    uniapp 开发踩坑记录
    微信扫码支付精简版
    QueryList The received content is empty!
    阿里云视频点播sdk封装 php
    我的大伯
    tp5分页携带原有参数
    爬虫项目:破解极验滑动验证码
  • 原文地址:https://www.cnblogs.com/flicat/p/10537879.html
Copyright © 2011-2022 走看看