React Native 0.56は、Optional Chaining Operator
、つまり?.
のネイティブサポートを提供します
ただし、VS Codeの最新の安定版リリースでは、この構文を認識できず、TypeScript検証エラーがスローされます。
[ts] Expression expected.
一方、コンパイル時エラーまたはエスリントエラーはスローされませんでした。
どうすれば修正できますか?
2019/12/11の更新:
オプションの連鎖は、3.7以降、TypeScriptによって正式にサポートされています。 ????
それでもこのエラーが発生する場合は、VSCodeに付属するTypeScript libが3.7未満である可能性があります。
TypeScriptの最新バージョン(> = 3.7)をワークスペースにインストールするだけで修正できます。 (開発担当者としてのnpmまたは糸による)
次に、コマンドパレットを開き、tstv
と入力して、JSおよびTS機能に使用するTypeScriptバージョンを切り替えますVS Code'sバージョンワークスペースのバージョン(それが> = 3.7であることを確認してください)と出来上がり!
これは間違いなく素晴らしい機能です。みなさんとハッキングをありがとう!
VS Code 1.41 オプションのチェーンをサポート JavaScriptファイルとTypeScriptファイルの両方で。このサポートには、構文の強調表示とIntelliSenseが含まれます。
VS Code 1.41+を使用していて、オプションのチェーンが期待どおりに機能しない場合は、以下を試してください。
インストールされている拡張機能を確認します。それらの一部は、オプションの連鎖をまだ理解していない可能性があり、エラーまたは不適切な構文強調表示を引き起こす可能性があります
ワークスペースTypeScriptバージョンを使用 の場合、それがTypeScript 3.7+であることを確認してください
JavaScriptおよびTypeScript Nightly をインストールしてから、VSCodeを再度開きます。
Vscode json設定でjs/ts検証を無効にすることで問題を解決しました:
"javascript.validate.enable": false
インストールする必要がありますeslint-plugin-babel
eslintルール。
{
"plugins": [
"babel"
],
"rules": {
"babel/new-cap": 1,
"babel/camelcase": 1,
"babel/no-invalid-this": 1,
"babel/object-curly-spacing": 1,
"babel/quotes": 1,
"babel/semi": 1,
"babel/no-unused-expressions": 1,
"babel/valid-typeof": 1
}
}
拡張機能 JavaScriptおよびTypeScript IntelliSense をアンインストールするまで、これは私にも起こりました。
ですから、この問題が引き続き発生する場合は、古いプラグインのアンインストールを確認してください。 vscode insiders バージョンを試して、これがそのバージョンで機能するかどうかを確認することもできます。変更を加えることなく機能しました。