我安装了 Svelte Beta 扩展并重新启动了语言服务器。 我的svelte.config.js
是:
const sveltePreprocess = require('svelte-preprocess');
module.exports = {
preprocess: sveltePreprocess(),
};
但是,扩展似乎并没有帮助 VS Code 理解我的代码是 Typescript,因为它在类型注释上给出了错误:
类型注释只能在 TypeScript 文件中使用。 javascript
同样有趣的是,如果我将lang="typescript"
更改type="text/typescript"
,语法颜色会完全消失,错误也会消失:
系统(请填写以下信息):
您可以在此处发布整个文件的代码或示例存储库吗? 我无法重现它。 不需要包含所有脚本但需要其他顶级标签
这是一个最小的复制:
<script lang="typescript">
let countExcludingUser: number = 0;
</script>
<p>Hi</p>
我禁用了除 Svelte Beta 之外的所有扩展并重新启动了 VS Code,但没有成功。
我只成功复制了一次,之后就没有运气了。 你能再试一次它最新版本 99.0.22 吗? 这个版本有一些关于预处理的更新。 如果它仍然存在,您可以制作一个示例回购吗?
从您的描述来看,似乎SveltePlugin.ts
确实知道它应该使用 Typescript 进行预处理,因为没有像“意外令牌”这样的 Svelte 语法错误。 另一方面, TypescriptPlugin.ts
确实 - 出于某种原因 - 无法识别您使用的是 Typescript,而是认为它是 Javascript。 真的很奇怪......一个示例回购肯定会有所帮助。
啊,所以问题是因为我在我的 VS Code“用户”设置中有这个:
"files.associations": {
"*.svelte": "html"
},
现在我已经删除了它,一切似乎都正常。
最有用的评论
啊,所以问题是因为我在我的 VS Code“用户”设置中有这个:
现在我已经删除了它,一切似乎都正常。