飞冰项目修改根目录

2022-07-25 11:58:30 浏览数 (1)

再用react开发项目时,部署时一帮会将其放到根目录下:

代码语言:javascript复制
<!DOCTYPE html>
<html>
  <head>
    <meta charset="utf-8" />
    <meta http-equiv="x-ua-compatible" content="ie=edge,chrome=1" />
    <meta name="viewport" content="width=device-width" />
    <title>赛事编排快捷操作</title>
  <link rel="icon" href="/favicon.png"><script defer src="/js/index.js"></script><link href="/css/index.css" rel="stylesheet"></head>

  <body>
    <div id="ice-container"></div>
  </body>
</html>

观察页面中资源的引入,都是绝对路径,都在根目录下,但是有时候,我们需要开发多个应用,需要部署多个前端项目,就要将其放到不同的目录,这样的话,路径就会产生问题,比方说我们想将前端项目放到/static/easyP/下面,目标代码如下:

代码语言:javascript复制
<!DOCTYPE html>
<html>
  <head>
    <meta charset="utf-8" />
    <meta http-equiv="x-ua-compatible" content="ie=edge,chrome=1" />
    <meta name="viewport" content="width=device-width" />
    <title>赛事编排快捷操作</title>
  <link rel="icon" href="/static/easyP/favicon.png">
  <script defer src="/static/easyP/js/index.js"></script>
  <link href="/static/easyP/css/index.css" rel="stylesheet">
  </head>
  <body>
    <div id="ice-container"></div>
  </body>
</html>

怎么修改呢?手动是一个方法,但是每次打包都需要手动去改,这里面还会产生部分资源错误,等等,所以我们需要利用工程化来实现,修改配置文件build.json的配置项:

代码语言:javascript复制
{
  "vite": false,
  "plugins": [
    [
      "build-plugin-moment-locales",
      {
        "locales": [
          "zh-cn"
        ]
      }
    ],
    [
      "build-plugin-ignore-style",
      {
        "libraryName": "@alifd/next"
      }
    ]
  ],
  "proxy": {
    "/api4": {
    "enable": true,
    "target": "http://47.104.7.142:30092"
  }
},
"publicPath": "/static/easyP/"

}

主要就是"publicPath":"/static/easyP/"这行操作,此时运行打包,就没有问题了。

0 人点赞