我正在开发一个用 Typescript 编写的 NPM 包。以下是我目前如何打包它的所有类和接口。这可行,但似乎非常重复且不是很干净(尤其是空类和接口扩展)。我该如何改进呢?
编辑:我已将主 NPM 文件更改为使用类扩展。这使得一切都更易于维护,因为不再有重复。但它可能会更慢,因为每个类都被有效地定义了两次。
deck.ts(主要的 NPM 文件)
/// <reference path="../d.ts/DefinitelyTyped/node/node.d.ts" />
import DeckDatabasePostgresClient = require('./Database/Postgres/Client');
import DeckDatabasePostgresConfigInterface = require('./Database/Postgres/ConfigInterface');
import DeckApp = require('./App');
import DeckRoute = require('./Route');
import DeckRouter = require('./Router');
module Deck {
export module Database.Postgres {
export class Client extends DeckDatabasePostgresClient {}
export interface ConfigInterface extends DeckDatabasePostgresConfigInterface {}
}
export class App extends DeckApp {}
export class Route extends DeckRoute {}
export class Router extends DeckRouter {}
}
export = Deck;
在 Typescript 中是否可能出现类似于以下内容的内容?
module Deck {
export import App = require('./App');
}
目前,这会导致以下错误:
Import declarations in an internal module cannot reference an external module.