我目前正在尝试将我的ts文件构建为单个ts文件.我得到的问题是我的代码不符合我的想法.我使用sourceRoot尝试设置唯一可以获取源的地方但是没有用.我也尝试过放一个.面前的目录,但它仍然从各处拉出来:(
{
"compilerOptions": {
"target": "ES5",
"noImplicitAny": true,
"removeComments": true,
"preserveConstEnums": true,
"out": "www/js/app.js",
"sourceMap": true,
"sourceRoot": "www/app"
}
}
所有文件,包括那些不在www/app build内的文件:(
现在我已经回到手动指定文件:
{
"compilerOptions": {
"target": "ES5",
"noImplicitAny": true,
"removeComments": true,
"preserveConstEnums": true,
"out": "www/js/app.js",
"sourceMap": true
},
"files": [
"./www/app/app.ts",
"./www/app/menu/menuController.ts",
"./www/app/playlists/playlistsController.ts"
]
}
是否可以将源目录限制为仅限www/app?
谢谢
对的,这是可能的.请使用rootDir
like 'rootDir': 'app'
,如果www
是您的应用程序的根目录.
rootDir
来自typescript编译器选项的描述:
指定输入文件的根目录.
根据tsconfig 架构:
"如果tsconfig.json中没有'files'属性,编译器默认包含包含目录和子目录的所有文件.当指定'files'属性时,只包含那些文件."
"如果tsconfig.json中没有'files'属性,但存在'exclude'属性,编译器将排除'exclude'属性中指定的文件和文件夹."
根据描述:
"files"属性不能与"exclude"属性一起使用.如果两者都指定,则"files"属性优先.
该问题"在tsconfig.json文件属性(或只是文件/目录排除)支持水珠"反映了当前的局面.