This commit is contained in:
+25
-1
@@ -1,8 +1,31 @@
|
||||
import { defineConfig } from 'vite'
|
||||
import uni from '@dcloudio/vite-plugin-uni'
|
||||
import { existsSync, readFileSync } from 'fs'
|
||||
import { resolve } from 'path'
|
||||
|
||||
// 开发服务器:显式处理 public 目录下的静态文件,避免被 SPA history 路由拦截
|
||||
function servePublicFiles() {
|
||||
return {
|
||||
name: 'serve-public-files',
|
||||
configureServer(server) {
|
||||
server.middlewares.use((req, res, next) => {
|
||||
if (req.url) {
|
||||
const filePath = resolve(__dirname, 'public', req.url.slice(1))
|
||||
if (existsSync(filePath) && filePath.endsWith('.txt')) {
|
||||
const content = readFileSync(filePath, 'utf-8')
|
||||
res.setHeader('Content-Type', 'text/plain; charset=utf-8')
|
||||
res.end(content)
|
||||
return
|
||||
}
|
||||
}
|
||||
next()
|
||||
})
|
||||
},
|
||||
}
|
||||
}
|
||||
|
||||
export default defineConfig({
|
||||
plugins: [uni()],
|
||||
plugins: [servePublicFiles(), uni()],
|
||||
css: {
|
||||
preprocessorOptions: {
|
||||
scss: {
|
||||
@@ -10,4 +33,5 @@ export default defineConfig({
|
||||
},
|
||||
},
|
||||
},
|
||||
publicDir: 'public',
|
||||
})
|
||||
|
||||
Reference in New Issue
Block a user