我正在考虑在节点中使用打字稿,目前习惯于通过///<reference.../>
纯粹使用内部模块的语法来使用打字稿。然而,对于较大的项目,这可能会变得笨拙,因为您可以让模块引用其他模块,这些模块都具有相互链接的引用。
因此,对于这个节点项目,我正在考虑尝试将所有逻辑组件分组为内部模块/类,就像以前一样,所以它们都将在内部相互引用,但通过一个外部模块公开它们,该模块将公开底层类等。
这样,语法将与现有需要机制的节点非常相似,例如:
import database = require("my-external-db-module.ts");
var connection = new database.Connection(someUrl);
而不是
///<reference path="my-internal-db-modules.ts" />
var connection = new Database.Connection(someUrl);
我想语法会是这样的:
///<reference path="all-my-internal-module-files-etc.ts" />
///<reference path="..." />
export module SomeExposingModule
{
// Not quite sure what to put in here to expose the internal modules
}
那么有没有围绕这类事情的任何最佳实践或任何其他做过类似事情的人,或者每个人都只是坚持使用内部模块来处理复杂的事情?