Можно ли использовать уничтожение при объявлении закрытых переменных класса с машинописью? - PullRequest
0 голосов
/ 05 декабря 2018

Обычно, когда несколько переменных происходят из одного и того же объекта, я бы использовал

const [ foo, bar, foobar ] = [ 'foo', 'bar', 'foobar' ]

Но в скрипте типа такие вещи, как

class Test {
    private {a,b,c} = tool;
}

Это больше не работает.

Есть ли другой способ?

1 Ответ

0 голосов
/ 05 декабря 2018

Вы можете использовать Object.assign для достижения того же результата ...

class Test {
    private a: number;
    private b: string;
    private c: boolean;

    constructor(arg: { a: number, b: string, c: boolean}) {
        Object.assign(this, arg);
    }
}

const tool = {
    a: 5,
    b: 'str',
    c: true
}

const test = new Test(tool);

console.log(JSON.stringify(tool));

Функция по уничтожению параметров все еще активна в обсуждении на GitHub .

Добро пожаловать на сайт PullRequest, где вы можете задавать вопросы и получать ответы от других членов сообщества.
...