这是我最初使用TypeScript的经验。我带了一个由两个文件组成的简单JavaScript应用程序,并将它们转换为TypeScript。TypeScript编译器在WebStorm中创建空的JavaScript文件
一个文件accounts.ts
包含主代码,另一个文件fiat.ts
是一个支持文件,该文件用一些导出的成员导出模块Fiat
。经过一些编辑后,我从TypeScript编译器得到了更多的错误信息。
我使用tsconfig.json
文件来控制编译:
{
"compilerOptions": {
"module": "commonjs",
"noImplicitAny": true,
"removeComments": true,
"preserveConstEnums": true,
"outFile": "main.js",
"target": "ES5",
"sourceMap": true
},
"files": [
"accounts.ts",
"fiat.ts"
]
}
应该创建一个main.js
文件包含的代码。但这包含成功编译后只有一行:
//# sourceMappingURL=main.js.map
没有其他代码被包括在内。我发现由事故,如果我删除行
import {Fiat} from './fiat';
在accounts.ts
文件则编译器包括accounts.ts
代码分成main.js
但fiat.ts
不是代码和附加打字稿编译器示出了用于每个引用Fiat
错误消息在accounts.ts
。
我想不出如何从两个TypeScript文件创建一个JavaScript文件。任何帮助,将不胜感激!
我在一些研究后发现:Typescript模块概念可以通过两种不同的方式来处理:内部模块和外部模块。我的困难来自于没有真正理解这一点。外部模块使用动态模块加载程序。你们import
他们。只有内部模块可以通过script
标签集中到一个(或多个)通过HTML加载的Javascript文件中。要使用内部模块,需要引用它们的文件中的/// <reference path="./name.ts" />
行。据我所知,内部和外部模块之间的其他语法差异较小。
[TypeScript将所有ts文件编译为WebStorm 7中的单个JavaScript文件的可能副本](http://stackoverflow.com/questions/21816695/typescript-compile-all-ts-files-as-a-single- javascript-file-in-webstorm-7) –
我看到了,并试图理解它。那里的人使用文件观察者,我直接使用编译器。可能不会有这么大的差别,但是编译器选项在那里提出的对我的问题没有任何作用。这似乎是不同的。 –