如何在typescript中的另一个类中使用静态枚举

时间:2016-10-06 20:05:23

标签: typescript

使用这个问题和答案作为参考Can you set a static enum inside of a TypeScript class?,我创建了一个枚举,并在我的课程中将其作为静态属性,如下所示

        DatagramPacket request = new DatagramPacket(buffer, buffer.length);
        aSocket.receive(request);
        String message = new String(request.getData());
        System.out.println("Received: " + new String(request.getData()));
        System.out.println(message); //Prints out "11" without quotes when I send it
        String a = "11";
        System.out.println("Received: " + message);
        if(message.equals("11")){
            System.out.println("Got 11.");
        }  
// Also tried .equals(a), but either ways it seems to be returning false.

是的,这是一个基本类,用作示例。

我在另一个需要使用它的文件中有第二个类。

/* Input.ts */
enum INPUT_TYPE { TEXT, RADIO, CHECKBOX }
export class Input {
    static INPUT_TYPE = INPUT_TYPE;
    readonly inputType: INPUT_TYPE;

    constructor (inputType: INPUT_TYPE) {
        this.inputType = inputType;
    }
}

我使用IntelliJ IDEA并拥有" Language&框架" - > TypeScript:" TypeScript版本:"自定义指向我当前的版本,即2.0.2。 IntelliJ向我抱怨并说它无法找到命名空间'输入'。

1 个答案:

答案 0 :(得分:3)

如果您希望以这种方式工作,请写下

/* Input.ts */
export class Input {
    readonly inputType: Input.INPUT_TYPE;

    constructor (inputType: Input.INPUT_TYPE) {
        this.inputType = inputType;
    }
}
export namespace Input {
    export enum INPUT_TYPE { TEXT, RADIO, CHECKBOX }
}