我正在使用TypeScript 2.9的resolveJsonModule功能,只要我使用ts-node执行应用程序,该功能就可以正常工作。当我将源文件转换为我的outdir时,它也会将JSON文件复制到outdir中,并把指向类型文件的源映射链接放入其中,如下所示:
[
{
"scid": 59000000
},
{
"scid": 59000000
}
]
//# sourceMappingURL=roles.json.map
当我运行我编译的javascript文件时,它们试图解析这些JSON文件,并且显然是由于指向注释行的意外令牌而抛出了SyntaxError:
internal/modules/cjs/loader.js:724
throw err;
^
SyntaxError: C:\Users\user\Documents\project\lib\assets\filename.json: Unexpected token / in JSON at position 22186
at JSON.parse (<anonymous>)
我的项目根目录在编译后看起来像这样
我的问题:
我该如何使用TypeScript 2.9的resolveJsonModule功能,以便转译的javascript能够解析我的JSON文件(由于注释行,当前无法使用)?
修改:
我已经尝试将资产文件夹放到tsconfig.json的exclude属性中,该属性不起作用。 tsconfig.json的完整内容在这里:https://ghostbin.com/paste/sdkcj
答案 0 :(得分:1)
我发现这是TypeScript 2.9.2修复的错误。版本2.9.0和2.9.1添加了源映射到已编译的JSON文件。