描述错误
在每个.svelte文件中,扩展名都向我抛出此错误(从“输出”选项卡复制):
Using Svelte v3.29.0 from /Users/nick/PROJECT_ROOT_REDACTED/node_modules/svelte/compiler
Preprocessing failed
Error: Cannot find any of modules: sass,node-sass
Error: Cannot find module 'node-sass'
Require stack:
- /Users/nick/.vscode/extensions/svelte.svelte-vscode-102.2.0/node_modules/svelte-preprocess/dist/modules/utils.js
- /Users/nick/.vscode/extensions/svelte.svelte-vscode-102.2.0/node_modules/svelte-preprocess/dist/autoProcess.js
- /Users/nick/.vscode/extensions/svelte.svelte-vscode-102.2.0/node_modules/svelte-preprocess/dist/index.js
- /Users/nick/.vscode/extensions/svelte.svelte-vscode-102.2.0/node_modules/svelte-language-server/dist/src/importPackage.js
- /Users/nick/.vscode/extensions/svelte.svelte-vscode-102.2.0/node_modules/svelte-language-server/dist/src/lib/documents/configLoader.js
- /Users/nick/.vscode/extensions/svelte.svelte-vscode-102.2.0/node_modules/svelte-language-server/dist/src/lib/documents/Document.js
- /Users/nick/.vscode/extensions/svelte.svelte-vscode-102.2.0/node_modules/svelte-language-server/dist/src/lib/documents/index.js
- /Users/nick/.vscode/extensions/svelte.svelte-vscode-102.2.0/node_modules/svelte-language-server/dist/src/server.js
- /Users/nick/.vscode/extensions/svelte.svelte-vscode-102.2.0/node_modules/svelte-language-server/bin/server.js
at Object.importAny (/Users/nick/.vscode/extensions/svelte.svelte-vscode-102.2.0/node_modules/svelte-preprocess/dist/modules/utils.js:30:15)
at async transformer (/Users/nick/.vscode/extensions/svelte.svelte-vscode-102.2.0/node_modules/svelte-preprocess/dist/transformers/scss.js:18:21)
at async /Users/nick/.vscode/extensions/svelte.svelte-vscode-102.2.0/node_modules/svelte-preprocess/dist/autoProcess.js:96:29
at async Object.style (/Users/nick/.vscode/extensions/svelte.svelte-vscode-102.2.0/node_modules/svelte-preprocess/dist/autoProcess.js:142:33)
at async wrappedPreprocessor.style (/Users/nick/.vscode/extensions/svelte.svelte-vscode-102.2.0/node_modules/svelte-language-server/dist/src/plugins/svelte/SvelteDocument.js:208:33)
at async /Users/nick/PROJECT_ROOT_REDACTED/node_modules/svelte/compiler.js:27431:32
at async Promise.all (index 0)
at async replace_async (/Users/nick/PROJECT_ROOT_REDACTED/node_modules/svelte/compiler.js:27386:52)
at async Object.preprocess (/Users/nick/PROJECT_ROOT_REDACTED/node_modules/svelte/compiler.js:27427:19)
at async transpile (/Users/nick/.vscode/extensions/svelte.svelte-vscode-102.2.0/node_modules/svelte-language-server/dist/src/plugins/svelte/SvelteDocument.js:223:25) {
__source: 'Style'
}
我安装了svelte-preprocess
,其设置在svelte.config.js
,如下所示:
// svelte.config.js
const sveltePreprocess = require('svelte-preprocess');
module.exports = {
preprocess: sveltePreprocess({
postcss: {
plugins: [
require('autoprefixer')
]
},
sass: {
sync: true,
implementation: require('sass'),
},
}),
};
我尝试删除implementation
,但没有用。 设置sass: true
时,它也不起作用。 我没有尝试使用node-sass
因为我特别需要Dart实现。
即使在没有scss代码的地方也会出现错误(请参见屏幕截图)
重现
重现行为的步骤:
svelte-preprocess
和sass
sass.implementation
为`require('sass')来配置svelte.config.js预期行为
屏幕截图
系统(请完成以下信息):
额外的背景
我正在开发一个Sapper应用程序,而不仅仅是Svelte。
好吧,我感觉很蠢
尽管我之前进行过检查,但是我错过了仍然安装的James Birtles的旧扩展。 删除旧扩展名并重新加载VSCode后,该消息消失了
上面提到的扩展名是Svelte for VS Code 。
好吧,我感觉很蠢
尽管我之前进行过检查,但是我错过了仍然安装的James Birtles的旧扩展。 删除旧扩展名并重新加载VSCode后,该消息消失了
而不是使用什么扩展名呢?
最有用的评论
好吧,我感觉很蠢
尽管我之前进行过检查,但是我错过了仍然安装的James Birtles的旧扩展。 删除旧扩展名并重新加载VSCode后,该消息消失了