具有负函数的Typescript链常量

时间:2018-05-11 21:00:20

标签: typescript chain

我正在使用Typescript 2.8.1,并希望将常量分组到一个公共文件中,类似于其他语言的包含文件。虽然这是直截了当的,但我试图将一些方法与值一起使用,并且似乎无法使其工作。

编辑:为简单起见需要默认返回,并且纠正了我不返回对象的初始问题。

例如,我将数字1到10定义为常量:

export enum CONSTANTS {
    ONE = 1, TWO, ... TEN
}

我希望能够在代码中使用这些代码,例如CONSTANTS.FIVE代表数字5,但也可以CONSTANTS.NEGATIVE.FIVE来获得-5。

我正在尝试使用链式方法,但似乎我需要将原始枚举定义为返回值的单个方法。

export class CONSTANTS {
    private Value_:number;

    public constructor() {
        this.Value_ = 0;
    }
    public ONE() {
        this.Value_ = 1;
        return this;
    }
    public TWO() {
        this.Value_ = 2;
        return this;
    }
    public NEGATIVE() {
        this.Value_ = this.Value_ * -1;
        return this;
    }
    public GetValue() {
        return this.Value_;    // This is the function I want to default to at the end
}

value = new CONSTANTS().ONE().NEGATIVE();        // Trying for -1

离开GetValue();返回对象。

1 个答案:

答案 0 :(得分:1)

作为替代方案,为了简化代码,您可以使用负一元运算符:

export enum CONSTANTS {
    ONE = 1, TWO = 2, ... TEN
}

//**//

console.log(-CONSTANTS.TWO)