【问题标题】:Hiding .js and .js.map files in Visual Studio typescript compilation在 Visual Studio 打字稿编译中隐藏 .js 和 .js.map 文件
【发布时间】:2019-11-30 08:12:37
【问题描述】:

我有一个使用 Visual Studio 2017 角度模板构建的项目。当我在 Visual Studio 2017 中添加打字稿文件并编译项目时,我在打字稿文件下看不到任何生成的 .js 或 js.map 文件。但是当我在 Visual Studio 2019 中添加一个打字稿文件并编译时,我看到在打字稿文件下生成了一个 .js 和 js.map 文件。这意味着我必须明确排除这些文件被提交到源代码管理。

我想知道如何在 Visual Studio 2019 中隐藏 .js 和 js.map 文件?以及为什么这些文件在 Visual Studio 2019 中自动生成,但在 Visual Studio 2017 中没有生成。

【问题讨论】:

  • 设置 TS 以在 dist/ 文件夹中生成这些文件,然后只需将文件夹添加到您的 gitignore
  • 我看到这已经到位并且适用于 VS 2017。但是当我通过 VS 2019 添加 .ts 文件时,该文件也被添加到 .csproj 我猜这会导致生成不需要的 .js 和 js.map。此选项在 .csproj 中设置。 true 我不确定为什么在 VS 2019 中会发生这种行为。

标签: javascript visual-studio typescript


【解决方案1】:

在 tsconfig.json 文件中添加:

"compileOnSave": false

在 .csproj 文件中添加:

<TypeScriptToolsVersion>Latest</TypeScriptToolsVersion>
<TypeScriptCompileBlocked>true</TypeScriptCompileBlocked>
<TypeScriptCompileOnSaveEnabled>False</TypeScriptCompileOnSaveEnabled>

【讨论】:

    【解决方案2】:

    您可以使用两个选项: 1.配置TypeScript生成输出文件(.js&.js.map)到一个单独的文件夹(如/dist//build/); 2. 将*.js & *.js.map 添加到.gitignore,这样它们就不会被添加到源代码管理中

    选项 1:

    将以下代码行添加到您的 tsconfig.json 文件中:

    {
      "compilerOptions": {
        "outDir": "build/"
      }
    }
    

    选项 2:

    将以下代码行添加到您的 .gitignore 文件中:

    *.js
    *.js.map
    

    【讨论】:

    • 我看到选项 1 已经到位并适用于 VS 2017。但是当我通过 VS 2019 添加 .ts 文件时,该文件也被添加到 .csproj 我猜这会导致生成不需要的 .js 和 js.map。此选项在 .csproj 中设置。 true 我不确定为什么在 VS 2019 中会发生这种行为。
    【解决方案3】:

    VScode 设置中的排除功能呢? 如果您希望每个项目都相同,请将其放在用户设置中。

    就像这样:

    "files.exclude" : {
        "*.js": true,
        "*.js.map": true
    }
    

    【讨论】:

      猜你喜欢
      • 1970-01-01
      • 2015-10-13
      • 1970-01-01
      • 1970-01-01
      • 1970-01-01
      • 1970-01-01
      • 2023-03-24
      • 1970-01-01
      • 1970-01-01
      相关资源
      最近更新 更多