Svelte 无法识别编译器选项 'preprocess'

Svelte not recognizing compiler option 'preprocess'

我是 Svelte 的新手,也是第一次创建项目。我想将 Svelte 与 Typescript 一起使用,所以我遵循官方指南 (https://svelte.dev/blog/svelte-and-typescript) 和 运行

npx degit sveltejs/template svelte-ts
cd svelte-ts
node scripts/setupTypeScript.js

npm install

然而,当 运行 宁 npm run devnpm run build 时,我得到了这个错误:

bundles src/main.ts → public\build\bundle.js...
[!] (plugin svelte) Error: Unrecognized option 'preprocess'
src\App.svelte
Error: Unrecognized option 'preprocess'
    at C:\Users\teh\svelte-ts\node_modules\svelte\src\compiler\compile\index.ts:40:10
    at Array.forEach (<anonymous>)
    at validate_options (C:\Users\teh\svelte-ts\node_modules\svelte\src\compiler\compile\index.ts:34:23)
    at compile (C:\Users\teh\svelte-ts\node_modules\svelte\src\compiler\compile\index.ts:75:2)
    at Object.transform (C:\Users\teh\svelte-ts\node_modules\rollup-plugin-svelte\index.js:105:21)
    at C:\Users\teh\svelte-ts\node_modules\rollup\dist\shared\rollup.js:18734:25

在检查 Typescript 项目的 rollup.config.js 文件时,我注意到 preprocess 属性 是 compilerOptions 的 属性:

plugins: [
    svelte({
        // enable run-time checks when not in production
        compilerOptions: {
            dev: !production,
            preprocess: sveltePreprocess()
        }
    }),
...

但在 none-typescript 项目 (https://github.com/sveltejs/svelte-preprocess#what-is-it) 中不是。

所以我将它移到了 compilerOptions 之外,现在它似乎正在构建和服务,但我不知道接下来会产生什么后果。

我是不是遗漏了什么或者模板中有错误?

是的,这是一个错误,reported here 不过,在您发布此问题后的几分钟内,它已得到修复。 所以新模板工作正常