在使用vite时,如何在生产环境中获得正确的静态资源路径?



当存储在公共文件夹中时,我的图像资源将在生产环境中显示如下:

https://ip/static/img/xxx.png

但是,我希望它是这样的:

https://ip/xxx/xxx/xxx/static/img/xxx.png, 

因为
https://ip/xxx/xxx/xxx/index.html 

是我的项目路径;

谁能告诉我怎么设置这个?

当我将静态资源存储在另一个文件夹中时,例如,"static"文件夹,它会显示在正确的路径后,我建立了项目,因为我使用了相对路径

../../static/img/xxx.png

这是我在vite.config.js中的设置

此外,当我使用别名命名时,我不能导入其他资源,


const test = "*/xxx/xxx.png";

显示了:

https://ip//*/xxx/xxx.png

vue2.6.14, vite2.5.1

import { defineConfig } from "vite";
import { createVuePlugin } from "vite-plugin-vue2";
import ViteComponents from "vite-plugin-components";
import { join } from "path";
// https://vitejs.dev/config/
export default defineConfig({
base: "",
resolve: {
alias: {
"@": join(__dirname, "src"),
"~": join(__dirname, "src/components"),
"*": join(__dirname, "static/img"),
},
extensions: [".js", ".vue", ".json", ".mjs"],
},
plugins: [createVuePlugin(), ViteComponents()],
css: {
preprocessorOptions: {
less: {
javascriptEnabled: true,
additionalData: '@import "./src/less/varsbank.module.less";',
},
},
},
optimizeDeps: {
include: ["axios"],
},
server: {
port: 8080,
},
build: {
assetsDir: "static",
},
});

Thanks a million.

此外,当我使用别名命名时,我不能导入其他资源,

const test = "*/xxx/xxx.png";

显示了:

https://ip//*/xxx/xxx.png

使用:import test from "*/logo.png";

更多信息:https://vitejs.dev/guide/assets.html#static-asset-handling

相关内容

  • 没有找到相关文章

最新更新