2

我有一个像下面这样的类,我把它放在一个名为 File1 的单独文件中

module test {
    export class myClass{
        constructor(MyName: any) {
        }

    }
}

在另一个名为 File2 的文件中,正在为上面的类创建对象,如下所示。

module test {
    class myClass2{
        var object = new myClass("name");
    }
}

如果将上面的对象创建打字稿代码转换为 javascript 代码,它看起来像这样

var object = new test.myClass("name");

但实际上我需要它在 js 中看起来像这样

var object = new myClass("name");

谁能帮我做到这一点?

4

1 回答 1

1

干得好:

module test {
    export class myClass{
        constructor(MyName: any) {
        }
    }
}

module test {
    var myClass = test.myClass;
    var object = new myClass("name");    
}

生成的js:

var myClass = test.myClass;
var object = new myClass("name");

尝试一下

更新:如果您不想test.在 js 中看到任何内容,请不要将类放入模块中,即:

class myClass{
    constructor(MyName: any) {
    }
}


module test {   
    var object = new myClass("name");    
}

更新 2:由于您想使用 typescript 中的现有 Js,您需要使用环境声明,即declare

declare class myClass{
    constructor(MyName: any);
}


module test {   
    var object = new myClass("name");    
}
于 2013-07-22T12:42:36.610 回答