我想使用 vite 将我的 esm js 打包到 commonjs,但它会清除节点模块。\nvite.config.js
\nimport { defineConfig } from \'vite\';\n\nconst config = defineConfig({\n envDir: process.cwd(),\n build: {\n lib: {\n entry: \'index.js\',\n formats: [\'cjs\']\n },\n rollupOptions: {\n output: {\n entryFileNames: \'[name].cjs\'\n }\n },\n emptyOutDir: true\n }\n});\n\nexport default config;\nRun Code Online (Sandbox Code Playgroud)\n我的示例index.js
\nimport Stream from \'node:stream\';\nconsole.log(`\xe2\x9c\xa8`, `Stream`, Stream);\nRun Code Online (Sandbox Code Playgroud)\n构建后,流将是一个空对象。
\n如何防止节点模块被清理?
\n我遇到了类似的问题并通过指定解决了它:
build: { ssr: true }
Run Code Online (Sandbox Code Playgroud)
然后为了消除警告,您还应该指定:
rollupOptions: {
input: 'index.js'
}
Run Code Online (Sandbox Code Playgroud)
| 归档时间: |
|
| 查看次数: |
4418 次 |
| 最近记录: |