当前位置: 首页 > 知识库问答 >
问题:

TypeScript–Visual Studio代码–编译后不输出2空格选项卡

龚俊捷
2023-03-14

这似乎是一个不太相关的问题,但我已经花了3个小时试图解决这个问题,什么也没有。

然后是基本设置:我在node/javascript中有一个项目,我目前正在尝试使用TypeScript来输出更清洁的生产代码。所以tsconfig.json看起来像这样:

{
  "compilerOptions": {
    
    "target": "es6",                                /* Specify ECMAScript target version: 'ES3' (default), 'ES5', 'ES2015', 'ES2016', 'ES2017', 'ES2018', 'ES2019', 'ES2020', 'ES2021', or 'ESNEXT'. */
    "module": "commonjs",                           /* Specify module code generation: 'none', 'commonjs', 'amd', 'system', 'umd', 'es2015', 'es2020', or 'ESNext'. */
     "lib": [
       "DOM",
       "es6",
       "DOM.Iterable",
       "ScriptHost"
     ], //default                                  /* Specify library files to be included in the compilation. */
    "sourceMap": true,                           /* Generates corresponding '.map' file. */
    "removeComments": true,                      /* Do not emit comments to output. */
    "strict": true,                                 /* Enable all strict type-checking options. */
    "esModuleInterop": true,                        /* Enables emit interoperability between CommonJS and ES Modules via creation of namespace objects for all imports. Implies 'allowSyntheticDefaultImports'. */
    "skipLibCheck": true,                           /* Skip type checking of declaration files. */
    "forceConsistentCasingInFileNames": true        /* Disallow inconsistently-cased references to the same file. */
  },
  "files": [
    "app_js/functions-syncsystem.ts"
  ]
}

我更漂亮。prettierrc文件看起来像这样:

{
    "singleQuote": true,
    "tabWidth": 2
}

除此之外,除了取消选中“检测缩进”之外,我还将visual studio代码中制表符的所有配置更改为两个空格(用户和工作区)。

问题是:在我的编辑器上,所有东西都可以用2空格标签正常工作。但是当我在终端上运行tsc时,输出文件的标签大小为4,我似乎不能在任何地方进行更改。

在这篇文章中,我也尝试了许多建议:如何在视觉工作室代码中更改缩进?

也喜欢这个:https://stackoverflow.com/a/68082579/2510785

每次修改后,我都确保我关闭了编辑器,并再次打开,生成了另一个编译文件。有人能想到任何其他可能的方法来解决这个问题吗?我唯一能想到的是,这可能是我的操作系统/VS代码递增中的一个特定问题。

谢谢,豪尔赫·莫里西奥

共有1个答案

彭鹭洋
2023-03-14

更改VSCode的设置不会对tsc编译器产生任何影响。

一目了然,似乎无法更改tsc输出的缩进样式,参见https://github.com/microsoft/TypeScript/issues/4042

这可能是因为开发人员很少有理由编辑编译的输出。

作为一种解决方法,您可以使用更漂亮的内容或使用VSCode本身重新格式化输出文件。

 类似资料:
  • TypeScript 提供了很多不同功能的编译选项,既可以通过配置 tsconfig.json 文件中的 compilerOptions 属性来实现编译,也可以使用在 tsc 命令后跟随参数这形式,直接编译 .ts 文件。 注意: 当命令行上指定了输入文件时,tsconfig.json 文件会被忽略。 1. 慕课解释 我们通过编译选项 --watch 为例,在当前目录创建 main.ts 文件,写

  • 上面的代码在TypeScript Play中可以找到,但我在从Visual Studio 2012编译它时收到了构建错误< code >错误“以代码1退出” 有人尝试在TypeScript中获取、设置并成功构建吗?

  • 我想缩进VisualStudio代码中的特定代码段。 我读了如何在Visual Studio Code中格式化代码?这提供了缩进整个代码的快捷方式,但在选择特定代码部分时不起作用。 在我的代码中选择了一些行后,我尝试了CtrlShiftF,但是整个文件是缩进的。我在Windows上使用Visual Studio Code Insider 1.8.0。我怎么能做到呢?

  • 代码不编译。我不明白错误是什么,请帮忙) 错误文本:g-Wall-c“main.cpp”(/media/ad/4GB-NTFS/prog/laba2)main。cpp:In函数“int main()”:main。cpp:46:12:错误:调用“Record::Record()”记录r1;^主要的cpp:12:1:注意:候选者:Record::Record(std::\u cxx11::string

  • 编译选项 选项 类型 默认值 描述 --allowJs boolean false 允许编译javascript文件。 --allowSyntheticDefaultImports boolean module === "system"或设置了--esModuleInterop 允许从没有设置默认导出的模块中默认导入。这并不影响代码的输出,仅为了类型检查。 --allowUnreachableCo

  • 所以我看到它找不到promise和地图。