vite 打包生成的文件如果直接放在服务器中是可以正常访问的,但是本地直接访问打包生成index.html文件就会提示以下问题。
访问的文件不存在,主要是因为路径配置问题。
提示跨域问题,不支持files协议,主要是因为esmodule问题。
问题1:访问的文件不存在,主要是因为路径配置问题。
解决:在 vite.config.js文件中配置
主要:打包静态文件必须是根路径,否则放到服务器找不到静态资源(同理于webpack中的publicpath 的配置)
解决方法:
在vite.config.ts中设置:base: "./"具体代码如下
import { defineconfig } from 'vite' import vue from '@vitejs/plugin-vue' import { resolve } from 'path' // https://vitejs.dev/config/ export default defineconfig({ base: "./", //等同于 assetspublicpath :'./' plugins: [vue()], // 设置文件./src路径为 @ resolve: { // 设置文件./src路径为 @ alias: [ { find: '@', replacement: resolve(__dirname, './src') } ], dedupe: [ 'vue' ] }, })
再次打包问题解决——
总结
到此这篇关于vue3+ts+vite打包后静态资源404无法加载js和css问题解决办法的文章就介绍到这了,更多相关vue3+ts+vite打包静态资源404内容请搜索代码网以前的文章或继续浏览下面的相关文章希望大家以后多多支持代码网!
发表评论