也许我没有使用Typescript正确使用命名空间,但这是我试图解决的问题。
创建类时,我需要使用require来引用我的所有其他文件。
import DependencyModule = require("Path.../DependencyModule");
import DependencyClass = DependencyModule.DependencyClass;
每次我需要添加这两行,如果我想能够构建这样的类:
var class = new DependencyClass();
因为我的项目很大,而且我已经需要几个类,我将有一个我称为ClassStore.ts的文件,它将引用所有类,这样我只需要引用一次这个文件
import ModulesStore = require("ClassStore");
var class = new ModulesStore.DependencyClass();
有可能这样做吗?我错过了名称空间的东西吗?
请注意,我尝试从包含多个导出的文件中导出导入类和接口。一个用于接口,另一个用于实现。
这是我项目的典型文件架构(DependencyClass.ts):
export interface IDependencyClass { ... }
export class DependencyClass { ... }
以下是我在" ClassStore"中尝试的内容:
// ClassStore.ts
export import DependencyModule = require("DependencyClass");
// Other file needing the DependencyClass
import ClassStore = require("ClassStore");
var class = new ClassStore.DependencyModule.DependencyClass();
我收到以下错误:未捕获的TypeError:无法读取属性' DependencyClass'未定义的。
感谢您的帮助。
答案 0 :(得分:0)
有可能这样做吗?我错过了名称空间的东西吗?
是。从DependencyModule
开始,使用=
class Foo{}
export = Foo;
使用index.ts
(或任何您想要的名称)import/exports
所有类别,例如
export import DependencyModule = require("Path.../DependencyModule");
export import DependencyModule2 = require("Path.../DependencyModule2");
然后你可以这样做:
import Index = require("Path.../Index");
var foo = new Index.Foo();