首页 文章

是否有可能有一个具有常量字符串的类,可以在typescript中编译为内联代码?

提问于
浏览
0

我正在寻找的是与TypeScript中的const enum完全相同的功能,但是对于字符串 . 它不一定是一个实际的类型(虽然这将是一个额外的奖励),但我正在寻找的是一种方法,有一个很大的const字符串列表,可以编译到JS中 . 原因是我们有一个很大的“魔术字符串”列表,我想用一些不易出错的东西替换它,但我不希望有一个巨大的类型列表的开销,这些类型并不是每个都没有使用页 .

打字稿:

const enum Foo {
    BarA = "BarA";
    BarB = "BarB";
}

class Test {
    myFunction = () => {
        var a = Foo.BarA;
    }
}

编译的JavaScript:

var Test = (function () {
    function Test() {
        this.myFunction = function () {
            var a = "BarA";
        };
    }
    return Test;
})();

1 回答

  • 0

    是否可以使用具有常量字符串的类,这些字符串在typescript中编译为内联代码

    现在不行 .

    那就是说我只使用一个对象文字,让TypeScript推断出正确的类型:

    var foo = {
        bar: 'bar',
        bas: 'bas'
    }
    
    
    var something = foo.bar; // Okay 
    var somethingElse = foo.baz; // Error
    

    当然,你没有内联,但你确实删除了这些字符串的魔力 .

相关问题