打字稿文件更改不被Visual Studio版本识别,并认为所有这些都是最新的



我正在 ASP.NET Core 3(预览版5)项目中使用TypeScript,最新的VS 2019 16.1.1(tsc:3.4)

当我使用"全部重建"或触摸任何C#文件或触摸tsconfig.json时,我所有的TypeScript文件都可以很好地编译。

但是,当我修改任何.ts文件时,保存然后"构建" VS 2019说所有内容都是最新的,并且什么也不做。

到目前为止我尝试过:

  • 我更改了compileOnSavecompilerOptions的顺序,没关系
  • 我试图设置compileOnSavetruefalse它没有帮助。顺便说一句,compileOnSavetrue什么也没做,我不在乎,太多(我不是贪得无厌,对我来说在构建上编译就足够了:-),但可能具有诊断价值。

tsconfig.json:

"compileOnSave": false, // does not matter if true or false
"compilerOptions": {
"module": "none",
"noImplicitAny": true,
"noEmitOnError": true,
"sourceMap": true,
"experimentalDecorators": true,
"emitDecoratorMetadata": true,
"target": "es2015",
"lib": [
"es2015",
"es5",
"dom"
],
"outDir": "wwwroot/js/gen-ts",
"typeRoots": [
"./wwwroot/lib/@types"
]
},
"include": [
"./Scripts"
]
  1. 关闭Visual Studio
  2. 查找您的项目名称.csproj 文件
  3. 打开您的项目名称.csproj 任何文本编辑器
  4. 更改节点<None Include="tsconfig.json" /> TO <Content Include="tsconfig.json" />

希望这有帮助。

感谢您分享您的项目。我这边重现了类似的问题。

以下是可能会有所帮助的建议:

1.将 .ts 文件从"常用"文件夹移动到"脚本"文件夹,因为 tsconfig.json 的内容是:

"include": [
"./Scripts"

2.Go=>Tools=>Options=>Projects and Solutions=>.net core=>最新检查=>>确保我们已检查Don't call msbuild if a project appears to be up-to-date

3.删除 bin 和 obj 文件夹并重新生成解决方案。

(不确定上面的哪些步骤真正有帮助,尽管在某些方面我已经解决了这个问题,但由于我做了太多的更改和测试,我无法弄清楚真正有效的方法)

4.之后,构建输出将在大部分时间显示successful build,尽管我们不会进行更改。

但我认为它只显示成功构建消息(它实际上不会构建这些文件):

1.如果我更改 xx.ts,只会重新生成 xx.js。(您可以比较.js文件的修改时间)

2.如果我对 xx.cs 文件进行一些更改,只会重新生成.dll和一些文件,而不会重新生成 xx.js 文件。

我认为现在构建行为实际上大部分是正常的,除了它错误的构建输出可能会误导我们。对于此方面,您可以通过"帮助"菜单=>发送反馈=>报告问题来报告此问题。

希望我没有误解什么:(如果我的答案有问题,请随时纠正我。

相关内容

  • 没有找到相关文章

最新更新