【发布时间】:2021-10-18 00:49:59
【问题描述】:
我有一个多页面应用程序,我正在尝试使用 Vite.js 构建(从 Webpack 迁移)。在构建 Vite + React 示例代码时,我看到它发出:
dist/index.htmldist/assets/<various assets>
但是,当我尝试制作一个如图所示的多页应用程序 in the docs 时,没有任何 HTML 被发出(但 /assets/ 的其余内容都在那里)。这是为什么呢?
// vite.config.js excerpt:
import { defineConfig } from 'vite'
import { dirname } from 'path';
import { fileURLToPath } from 'url';
export default defineConfig({
root: 'client',
build: {
outDir: 'dist',
rollupOptions: {
input: {
main: dirname(fileURLToPath(import.meta.url + 'index.html')),
login: dirname(fileURLToPath(import.meta.url + 'login.html')),
}
}
},
});
【问题讨论】:
-
remove
dirname删除文件名,只有目录名会被忽略。 -
@Chandan 如果我删除目录名,我会在
vite build期间收到错误消息,上面写着SyntaxError: Assigning to rvalue。 -
尝试
new URL(./index.html, import.meta.url),如vite doc中指定的那样。 -
你的建议奏效了@Chandan!把它放在一个答案中,我会接受它。
main: new URL('./client/index.html', import.meta.url).pathname, -
我已经发布了答案。
标签: javascript reactjs vite