打字稿anonymous getter and setter(拳击和拆箱)

问题描述 投票:0回答:1

我需要一个带有匿名setter和getter的Typescript(可能是JavaScript)对象。我想要像:

class clsX{
    a : string,
    b : any,
    public get () : any { return someFuncG(); }
    public set (v: any) { someFuncS(v); } 
}
var x : clsX;
var y : any;
y = x; // y assigned with return of someFuncG.
x = y; // execute someFuncS( y )

这可以通过C#(使用强制转换操作符)轻松实现,但我想知道是否有可能在打字稿中。一种拳击和拆箱。

javascript typescript getter-setter
1个回答
0
投票

您想要的是以下效果:

function dummyGet() {
    console.log('We are getting something');
    return 1;
}

function dummySet(value) {
    console.log('We are setting something');
    console.log('The new value is', value);
}

Object.defineProperty(
    window, // `global` in Node.js
    'x',
    {
        get() { return dummyGet(); },
        set(x) { dummySet(x); }
    }
);

但似乎很难与类语法相关。

© www.soinside.com 2019 - 2024. All rights reserved.