通常情况下,我们直接npm run build后的代码可以直接部署在服务器上,以便老板远程访问。但是今天写了个简单的demo发现部署后不能直接访问。作为一个菜鸟,被领导催的也是心急如焚。
但奇怪的是,vscode的open live server却没有任何问题。
冥思苦想苦思冥想无法解决,问了同事大佬,原来是要在打包前的vue config下加一下publicPath:‘./’:
于是重新打包,再部署到服务器,解决啦!!!
知其然还要知其所以然,我们看一下官网的解释:
Expected a JavaScript module script but the server responded with a MIME type of
其实这个很简单:
在vite.config.js中:
将base对应的属性从'./'改为'/'即可
import { defineConfig, loadEnv, ConfigEnv } from 'vite'; const viteConfig = defineConfig((mode: ConfigEnv) => { const env = loadEnv(mode.mode, process.cwd()); return { plugins: [vue()], root: process.cwd(), resolve: { alias }, base: '/', }; });
以上为个人经验,希望能给大家一个参考,也希望大家多多支持。