Тип сценария Object должен позволять определенное свойство одновременно - PullRequest
0 голосов
/ 09 апреля 2020

Я новичок в машинописи, у меня есть объект obj, и он имеет 3 свойства. а, б, c. среди них b и c не сойдутся в объекте. ie Мой объект будет

obj = {
    a: 'xxx',
    b: 'xxx'
}

или

obj = {
    a: 'xxx',
    c: 'xxx'
}

. Как я могу определить тип obj.

1 Ответ

1 голос
/ 09 апреля 2020

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

Вы можете сделать это двумя способами. Либо вы определяете два типа и говорите, что ваш конечный объект либо типа A, либо типа B:

const myObj: typeA | typeB;

И в типе A вы определяете свойства a + c, в типе B вы определяете a + b.

Или вы можете сделать это так:

Вы определяете

obj = {
  'a': string,
  'b'?: string,
  'c'?: string
}

Вы устанавливаете оба параметра как необязательные. И вы делаете все проверки logi c в вашем компоненте / .ts файле.

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