我正在使用最新的VS2015,并在我的项目文件中为 typescript 设置了以下选项:

  <PropertyGroup>
    <TypeScriptTarget>ES5</TypeScriptTarget>
    <TypeScriptCompileOnSaveEnabled>true</TypeScriptCompileOnSaveEnabled>
    <TypeScriptNoImplicitAny>false</TypeScriptNoImplicitAny>
    <TypeScriptModuleKind>AMD</TypeScriptModuleKind>
    <TypeScriptRemoveComments>false</TypeScriptRemoveComments>
    <TypeScriptOutFile></TypeScriptOutFile>
    <TypeScriptOutDir></TypeScriptOutDir>
    <TypeScriptGeneratesDeclarations>false</TypeScriptGeneratesDeclarations>
    <TypeScriptSourceMap>true</TypeScriptSourceMap>
    <TypeScriptMapRoot></TypeScriptMapRoot>
    <TypeScriptSourceRoot></TypeScriptSourceRoot>
    <TypeScriptNoEmitOnError>true</TypeScriptNoEmitOnError>
</PropertyGroup>

我的问题是当它编译文件时:
UserService.ts it creates a userservice.js and a userservice.js.map

然后包含//# sourceMappingURL=userservice.js.map
然后,userservice.js.map具有以下行:
sources":["userservice.ts"]

其他人看到了吗?我尝试过重新创建文件。这给我带来了很多问题。

跟进:

当我创建一个 typescript 文件UserServicexxxx.ts时,一切正常。当我删除所有UserService文件并创建UserService.ts时,它可以返回到之前的操作。

我已经努力了30分钟或更长时间,试图创建UserService.ts,UserService.js和UserService.js.map :-(

最佳答案

可能是此问题的原因:https://github.com/Microsoft/TypeScript/issues/2011
您是否检查了引用UserService.ts的所有文件是否正确区分大小写?如果将它们设置为userservice.ts大小写,则无论ts文件的实际大小写如何,它都将编译为userservice.js。由于性能原因,他们现在不检查此问题,但这样会产生奇怪的错误。
清理您的项目,然后搜索“userservice.ts”。如果找到一个,请将大小写更改为适当的CamelCasing并重新编译。
我在这里重现了这个问题:
UserService.ts

userService.ts

userservice.ts

仔细检查是否有任何缠结的链接!

关于typescript - Typescript始终将文件名编译和更改为小写(VS2015),我们在Stack Overflow上找到一个类似的问题:https://stackoverflow.com/questions/31217180/

10-12 17:17