在Visual Studio Code中的TypeScript中工作时,对类型的导入建议(按空格+句点触发)将使用双引号生成导入。
我们的TypeScript linter验证在可能的情况下使用单引号。
如您在下面看到的,该建议带有双引号(“ @angular / ...”)
如何调整导入设置?
Answers:
从VSCode 1.10开始,这是(非常)不可能的。但这似乎对大多数用户来说是个问题。VSCode主题已意识到此问题,您可以按照以下步骤了解何时实现:https : //github.com/Microsoft/TypeScript/issues/13270
2018年6月更新
自VSCode 1.24(2018年6月)以来,对此有一个选择!
"typescript.preferences.quoteStyle": "single"
有关更多信息,请参见:
https://code.visualstudio.com/updates/v1_24#_preferences-for-auto-imports-and-generated-code
"typescript.preferences.quoteStyle": "single"
您还可以在vscode用户设置中配置以下行以调整此设置。
"prettier.singleQuote": true
我修复了使用Editor config的问题,在项目根目录中打开.editorconfig文件(如果没有,请创建该文件),并在[*]之后添加此行
[*]
...
quote_type = single
在Wiki中,您可以看到属性的完整列表。
从VS Code 1.21.1开始,您需要进行编辑
/usr/share/code/resources/app/extensions/typescript-basics/snippets/typescript.json
在Windows中
/ Applications / Visual Studio Code.app/Contents/Resources/app/extensions/typescript-basics/snippets/typescript.json。
在Windows 10(vscode版本1.30。*(用户设置)之后)中
* C:\ Users \ <您的用户名> \ AppData \ Local \ Programs \ Microsoft VS Code \ resources \ app \ extensions \ typescript-basics \ snippets \ typescript.json
在该文件的“导入外部模块”部分中,将主体数组属性设置为值。"import { $0 } from '${1:module}';"
该部分将如下所示:
"Import external module.": {
"prefix": "import statement",
"body": [
"import { $0 } from '${1:module}';"
],
"description": "Import external module."
},
支持此配置的替代方法是TypeScript Toolbox。
可以通过设置进行配置,genGetSet.pathStringDelimiter
默认情况下已将单引号导入。
genGetSet.spacedImportLine
设置,因此新的导入行看起来像是import { Router }....
默认行import {Router}...
转到“文件>首选项>设置”,然后将其添加到用户设置下:
"typescript.preferences.quoteStyle": "single",
"javascript.preferences.quoteStyle": "single"
// Preferred quote style to use for quick fixes: 'single' quotes, 'double' quotes, or 'auto' infer quote type from existing imports. Requires using TypeScript 2.9 or newer in the workspace.
从TypeScript 2.5开始,将扫描文件中的第一个import或export语句,以确定在使用导入建议时使用单引号还是双引号。
您还可以在vscode用户设置中配置以下行,以允许在字符串中使用单引号。
转到首选项>用户设置
"prettier.singleQuote": true
这将允许在字符串中使用单引号。否则,如果您手动将所有双引号更改为单引号,它将在保存时还原。另外,添加
"tslint.autoFixOnSave": true
保存时自动修复。
这已经实现(如另一个答复中所述)!但是您可能尚未使用最新版本的TypeScript。
解决方法很简单:
单击“ TypeScript”和右下角的笑脸之间的TypeScript版本号(例如2.3.4)。然后切换到Visual Studio Code内置版本(目前为2.5.3)。
此Visual Studio代码之后,将通过查看第一个导入语句来推断导入引用样式。请注意,一个小的弹出标签仍将显示双引号。
这增加了确定通过代码修复添加的新导入是使用单引号还是双引号的功能。添加新导入后,我们将使用模块说明符扫描源文件的最顶层语句,以查找现有的导入或导出声明。然后,我们使用找到的第一个引用样式。如果文件中没有现有的导入,我们将退回到使用双引号。
上述解决方案对我不起作用
因此,这是我的解决方法,在您使用vscode时"tslint.autoFixOnSave"
::truesettings.json
保存文件时将自动修复这些导入引用。
Unknown Configuration Setting