我有一个Visual Studio项目,其结构如下:
我的tsconfig.json
看起来像:
{
"compilerOptions": {
"noImplicitAny": false,
"noEmitOnError": true,
"removeComments": false,
"sourceMap": true,
"target": "es5",
"outDir": "../wwwroot/"
},
"exclude": [
"node_modules",
"wwwroot"
]
}
但是,VS没有将app.ts
编译到wwwroot
文件夹中。
我错过了什么?
4条答案
按热度按时间gcmastyq1#
尝试将
"compileOnSave": true
添加到您的tsconfig.json
:现在每次保存时都应该编译。
w8f9ii692#
在Visual Studio中,选择“项目”〉“属性”〉“生成”〉确保选中“生成时编译TypeScript”:
此外,在您的
tsconfig.json
中,您应该指定rootDir
,以便TypeScript知道在何处查找它应该编译的*.ts
文件:详情请参见TypeScript第here和here页。
不要忘记实际构建它。它不是文件监视器方案。
ttisahbt3#
可能是typescript文件中的语法错误。
我的解决方案是回滚
.ts
文件,直到它编译完成(即typescript和javascript文件的时间戳是相同的),然后从那里开始修改.ts
文件。如果在编译.ts
文件后时间戳不相同,那么我们知道这可能是语法错误。我必须在每次修改后编译并检查时间戳。不幸的是,语法错误没有显示在任何地方,所以我不得不依靠时间戳来确定文件是否被编译。
我在Visual Studio 2019中启用了保存时编译
以下是FileExplorer的屏幕截图,其中
.ts
出现错误。请注意时间戳的差异。下面是一个FileExplorer的截图,其中的
.ts
文件被成功编译成了javascript。7d7tgy0s4#
在VS 2022中,将.ts文件的Property -〉Build Action从“None”更改为“TypeScript File”对我来说很有用。