Rollup 不从 Svelte 编译 HTML
Rollup does not compile HTML from Svelte
我目前正在尝试将 svelte 集成到我的另一个项目中,但我正在 运行 遇到一个问题,我认为它可能与 rollup 或 rollup 的 svelte 插件有关。
之前可能需要了解的重要信息:我也想使用打字稿。 (所以在一切之前,我总是运行node scripts/setupTypeScript.js
)
问题是 rollup,看似在 运行dom,不会从 svelte 源文件生成 HTML 和 CSS 文件。
我尝试在 rollup.config.js:
中明确包含源文件
svelte({
include: "src/**/*.svelte",
preprocess: sveltePreprocess({ sourceMap: !production }),
compilerOptions: {
// enable run-time checks when not in production
dev: !production
}
}),
并替换
import App from "./App.svelte
与
const App = require("./App.svelte")
但运气不好。
当我 运行 rollup -c
时,我总是只得到 public/build
文件夹中的 bundle.js
和 bundle.js.map
,但没有 HTML 或CSS 个文件。
我错过了什么?
项目文件夹如下所示:(我运行rollup -c
之后)
│ .gitignore
│ package-lock.json
│ package.json
│ README.md
│ rollup.config.js
│ tsconfig.json
│
├───.vscode
│ extensions.json
│
├───node_modules
│ [...]
│
├───public
│ └───build
│ bundle.js
│ bundle.js.map
│
└───src
App.svelte
global.d.ts
main.ts
所以我想我找到了解决办法。
我认为问题是,当我 运行 重新编译时,我总是删除 public
文件夹,因为我认为它包含的只是编译器生成的文件。
我想情况并非如此。
我从另一个模板复制了一个新的 public
文件夹后,它现在似乎可以工作了。
虽然我仍然不完全理解为什么这是必要的,因为模板 ZIP 本身不包含 public
文件夹。它也是在我先运行npm run build
之后才生成的。
所以出于某种原因,在某些时候,编译器不再完全生成它。
我目前正在尝试将 svelte 集成到我的另一个项目中,但我正在 运行 遇到一个问题,我认为它可能与 rollup 或 rollup 的 svelte 插件有关。
之前可能需要了解的重要信息:我也想使用打字稿。 (所以在一切之前,我总是运行node scripts/setupTypeScript.js
)
问题是 rollup,看似在 运行dom,不会从 svelte 源文件生成 HTML 和 CSS 文件。
我尝试在 rollup.config.js:
中明确包含源文件svelte({
include: "src/**/*.svelte",
preprocess: sveltePreprocess({ sourceMap: !production }),
compilerOptions: {
// enable run-time checks when not in production
dev: !production
}
}),
并替换
import App from "./App.svelte
与
const App = require("./App.svelte")
但运气不好。
当我 运行 rollup -c
时,我总是只得到 public/build
文件夹中的 bundle.js
和 bundle.js.map
,但没有 HTML 或CSS 个文件。
我错过了什么?
项目文件夹如下所示:(我运行rollup -c
之后)
│ .gitignore
│ package-lock.json
│ package.json
│ README.md
│ rollup.config.js
│ tsconfig.json
│
├───.vscode
│ extensions.json
│
├───node_modules
│ [...]
│
├───public
│ └───build
│ bundle.js
│ bundle.js.map
│
└───src
App.svelte
global.d.ts
main.ts
所以我想我找到了解决办法。
我认为问题是,当我 运行 重新编译时,我总是删除 public
文件夹,因为我认为它包含的只是编译器生成的文件。
我想情况并非如此。
我从另一个模板复制了一个新的 public
文件夹后,它现在似乎可以工作了。
虽然我仍然不完全理解为什么这是必要的,因为模板 ZIP 本身不包含 public
文件夹。它也是在我先运行npm run build
之后才生成的。
所以出于某种原因,在某些时候,编译器不再完全生成它。