Language-tools: Svelte forVSコードv102.5.0 / svelte-check 1.1.09スタイルタグが下にある場合、.svelteファイルのTSサポートを解除します

作成日 2020年11月05日  ·  9コメント  ·  ソース: sveltejs/language-tools

バグを説明する
インポートとマークアップ-相互運用タイプ-ヒントは、バージョン102.5.0の.svelteファイルで壊れます。

  • マークアップのjs変数(例: <div>{obj.value}</div> )にカーソルを合わせると、型のヒントは表示されません。
  • マークアップでオートコンプリートしようとしたときにプロパティの提案はありません。
  • <script lang="ts"> tsエラーがある誤検知。
  • コンポーネントのインポートエラーによる誤検知(場合によっては)。

v102.4.0に戻すと、次の問題が修正されます: code --install-extension [email protected]

再現するには
[email protected]をインストールします。 [email protected]比較してください。

予想される行動
何が起こると予想したかについての明確で簡潔な説明。

スクリーンショット

  • オートコンプリートしようとしたときにプロパティの提案はありません:
    image
  • tsエラーを伴う誤検知:
    image
  • コンポーネントのインポートによる誤検知(場合によっては):
    image

システム(以下の情報を入力してください):

  • OS:Windows
  • IDE:VSCode 1.50.1、x64
  • プラグイン/パッケージ:VSCode用のSvelte

追加のコンテキスト
明確にするために、私のアプリは期待どおりに実行されます。これは完全にツールの問題のようです。

Fixed bug

最も参考になるコメント

これは、Svelte forVSコード102.5.1 / svelte-check 1.1.10で修正する必要があります

全てのコメント9件

これを再現する最小のコードスニペット、より具体的には、「予期しないトークン」エラーが発生するコードスニペットがありますか(他のすべてのエラーはそのためだと思います)? あなたの説明では再現できません。

svelte-check1.1.8を使用

> svelte-check --output=machine
1604601599943 START "<my-path>"
1604601605719 COMPLETED 36 FILES 0 ERRORS 0 WARNINGS 10 HINTS

svelte-check1.1.9を使用

> svelte-check --output=machine
1604601792022 START "<my-path>"
1604601797435 ERROR "src/components/employee/Employees.svelte" 10:18 "Unexpected token"
1604601797435 COMPLETED 36 FILES 1 ERRORS 0 WARNINGS 9 HINTS

問題の行は、次のタイプの変数を定義しているだけです。
let newEmployee: EmployeeDto;

私も最新のアップデートで予期しないタイプスクリプトエラーを受け取ります。 これまでのところ、それは輸入だけでした。 すべて同じエラーが発生しますが、通常はファイル間で同じ行ではありません。 ここで、 *をエラーとしてマークし、他のファイルが{またはインポート行の他の部分をマークしていることがわかります。

image

誰かが回避策を探している場合:

  • ctrl+,
  • extensions.autoUpdateを検索して無効にします
  • ターミナルを開き、プラグインをcode --install-extension [email protected] v102.4.0に戻します。
  • インストールしてリロードするのを待ちます

後で自動更新を再度有効にすることを忘れないでください

PRが入ったばかりのように見えますが、それでも役立つ場合は、これが確実に再現できる最小の例です。

<script context="module" lang="typescript">
  class Control {
    el: string;
  }
</script>

<script lang="typescript">
</script>

これは、Svelte forVSコード102.5.1 / svelte-check 1.1.10で修正する必要があります

将来このようなことを防ぐために、これのテストを追加できますか? やりたいのですが、このリポジトリでテストが見つかりませんでした。ヒントを教えてください。

ほんの少しの背景:私はSvelteを初めて使用し、何が起こっているのかを理解するために約2〜3時間を費やしました。 まず、vsコードをリロードした後にsvelte拡張機能が壊れました(当時は気づいていませんでした)。次に、すべてのパッケージを再インストールした後、svelte-checkが機能しなくなりました(当時は気づいていませんでした)。 どうやらこのようなことが起こったのはこれが初めてであるため、私は何もグーグルで検索したり、svelte-checkのトラブルシューティングガイドで何かを見つけることができませんでした。 素晴らしい経験ではありません。 Reactから来た人にとって、素晴らしいタイプスクリプト体験は必須です。 私はSvelteを永久に捨てようとしていました:(

コミットで確認できる修正を含むテストを追加しました。 去ると脅すことは役に立たない。

素晴らしい、私はそれがすでにコミットに含まれていることを逃しました:)

ところで、私は「脅迫的」ではありません。私は、それが私を襲った状況と、それが私をどのように感じさせたかを説明しようとしていただけです。それだけです。

このページは役に立ちましたか?
0 / 5 - 0 評価