skip to content
logo

Search

项目打包之后, 生成可修改 host 文件

在做私有化部署的项目的时候遇到了一个问题, 就是把项目部署到不同的服务器上, 但不能每次修改 IP 的时候就打包一次, 这就增加了前端的工作量。

创建配置文件 config.js

  • static 文件夹下面建立一个 config.js 文件
(function () {
  window.SITE_CONFIG = {}
  // api 接口请求地址  这里写后端要请求的接口地址
  window.SITE_CONFIG['baseUrl'] = '请求的地址' 
})()

引用配置脚本

  • 在项目中的 index.html 页面引用这个 config.js
  • 利用 window 的属性把地址在全局中暴露出来
<!DOCTYPE html>
<html>
  <head>
    <meta charset="utf-8">
    <meta name="viewport" content="width=device-width,initial-scale=1.0">
    <link rel="stylesheet" href="./src/assets/style/index.css">
    <title>修改IP</title>
    <script src="./static/config.js"></script>
  </head>
  <body>
    <div id="app"></div>
    <!-- built files will be auto injected -->
  </body>
</html>

使用全局暴露出来的 Window 属性

  • 在封装的请求页面,使用这个全局暴露出来的 Window 属性接口,将 IP 地址写到公共方法里面
import axios from './http'
 
const baseUrl = window.SITE_CONFIG.baseUrl

function requestPost([dataList, methodInfo] = [{}, {}]) {
    return axios.post(`${baseUrl}`, {
        dataList,
        methodInfo,
    })
}

这样就完成了,重新打包之后,在 static 文件夹中会生成 config.js 的文件, 修改这个文件的地址,就可以随便更换 IP 地址了。