繁体   English   中英

VS Code 将 JavaScript 文件视为 Typescript

[英]VS Code treats JavaScript files as Typescript

我目前已经开始使用 Typescript 并且我已经使用了几天,一切正常(Emmet、linting 等),但是当我打开用 JavaScript 编写的旧项目时,vs 代码给了我警告以及有关与 typescript 相关的打字和内容的错误。 不知何故,Vs Code 无法识别我正在使用 JavaScript。

PS。 我正在开发一个 vue (nuxt) 项目,而 Vetur 插件正在处理语法高亮、linting 等...

错误示例:声明了“modifyHtml”,但它的值从不读取。ts(6133)

属性 '$store' 不存在于类型“CombinedVueInstance<Record<never, any> & Vue, object, object, object, Record<never, any>>.

这是我的 settings.js:

    {
  "workbench.iconTheme": "material-icon-theme",
  "editor.defaultFormatter": "esbenp.prettier-vscode",
  "editor.formatOnSave": true,
  "liveServer.settings.donotShowInfoMsg": true,
  "editor.linkedEditing": true,
  "liveServer.settings.donotVerifyTags": true,
  "explorer.confirmDelete": false,
  "explorer.confirmDragAndDrop": false,
  "eslint.format.enable": true,
  "emmet.includeLanguages": {
    "javascript": "javascriptreact",
    "vue-html": "html",
    "vue-css": "css",
    "razor": "html",
    "plaintext": "jade"
  },
  "emmet.excludeLanguages": ["markdown"],
  "[dart]": {
    "editor.formatOnSave": true,
    "editor.formatOnType": true,
    "editor.selectionHighlight": false,
    "editor.suggest.snippetsPreventQuickSuggestions": false,
    "editor.suggestSelection": "first",
    "editor.tabCompletion": "onlySnippets",
    "editor.wordBasedSuggestions": false
  },
  "git.confirmSync": false,
  "javascript.updateImportsOnFileMove.enabled": "always",
  "nativescript.analytics.enabled": true,
  "editor.suggestSelection": "first",
  "vsintellicode.modify.editor.suggestSelection": "automaticallyOverrodeDefaultValue",
  "java.configuration.checkProjectSettingsExclusions": false,
  "sonarlint.rules": {
    "java:S106": {
      "level": "off"
    },
    "javascript:S1117": {
      "level": "off"
    }
  },
  "workbench.preferredDarkColorTheme": "GitHub Dark",
  "workbench.preferredHighContrastColorTheme": "GitHub Dark",
  "workbench.preferredLightColorTheme": "Visual Studio Dark",
  "[json]": {
    "editor.quickSuggestions": {
      "strings": true
    },
    "editor.suggest.insertMode": "replace"
  },
  "files.autoSave": "afterDelay",
  "typescript.updateImportsOnFileMove.enabled": "always",
  "vetur.experimental.templateInterpolationService": true,
  "cSpell.userWords": ["vuex"],
  "workbench.colorTheme": "GitHub Dark",
  "vetur.format.defaultFormatterOptions": {
    "js-beautify-html": {
      "wrap_attributes": "force-expand-multiline"
    },
    "prettyhtml": {
      "printWidth": 100,
      "singleQuote": false,
      "wrapAttributes": false,
      "sortAttributes": false
    }
  },
  "files.associations": {
    "*.vue": "vue"
  },
  "eslint.validate": ["javascript", "javascriptreact", "vue"],
  "vetur.grammar.customBlocks": {
    "docs": "md",
    "i18n": "json"
  },
  "window.zoomLevel": -1,
  "json.schemas": []
}

这是 VS Code 上的错误截图

如果您有 tslint,请尝试禁用它。 这可能会解决问题,但有时这些错误也会出现在 eslint 中

这对我有用。 在我的工作区settings.json

{
  "vetur.validation.interpolation": false
}

这是我的jsonfig.json设置:

{
  "include": ["./src/**/*"]
}

暂无
暂无

声明:本站的技术帖子网页,遵循CC BY-SA 4.0协议,如果您需要转载,请注明本站网址或者原文地址。任何问题请咨询:yoyou2525@163.com.

 
粤ICP备18138465号  © 2020-2024 STACKOOM.COM