Typescript: лучший способ создать объект, который ссылается на себя - PullRequest
0 голосов
/ 18 марта 2020

Я пытаюсь перенести этот упрощенный js код в ts:

let Test = {};
Test.a = { //error: prop a does not exist
    someProp: true
};

Test.b = {
    ...Test.a,//self referencing
    otherProp: true
};

export default Test;

Я хочу избегать извлечения объекта в интерфейс , потому что объект имеет много реквизитов и Я не хочу повторять все реквизиты в реализации.

Есть предложения?

Playground Link

1 Ответ

1 голос
/ 19 марта 2020

Результат все равно должен быть правильно выведен, когда вы немного переставляете вещи.

const a = {
    someProp: true
}
const b = {
    ...a,
    otherProp: true
}

const test = {a, b}

export default test;

«Хитрость» в создании подобного объекта заключается в том, что вам нужно создать его все сразу и не изменять его в несколько этапов. В обратном порядке вы достигаете этого.

...