Вопрос - необязательное поле в состоянии компонента реакции - PullRequest
0 голосов
/ 04 ноября 2019

Итак, мы работаем с внешней компанией, чтобы сделать наше мобильное приложение. Один из их ведущих пенсионеров увидел мой код и спросил, почему я не делаю это:

class Insurance extends React.PureComponent{
    state: {
        coverageType: [],
        distancePerYear: 0,
        plateNumber: '00000000',
        isPrivate: false,
        lien?: {

        }
    }
}

В моей версии кода поле lien было таким:

lien: {
  isExist: false,
  // .... more attributes
}

Поэтому я хотел бы задать несколько вопросов о предложенном им шаблоне, поскольку я редко видел этот оператор ? раньше и никогда не находился в состоянии (и, к сожалению, не буду спрашивать этого старшего по крайней мере в течение 2 недель):

  1. как сделать состояние по умолчанию таким, чтобы это поле не существовало?

  2. Когда оно не существует - как мне нацелить егозаполнить это? делает this.setState({ lien: { /* more attributes */ } }); достаточно? или мне нужно как-то его создать.

  3. Как удалить его из состояния, если пользователь по ошибке ввел залоговое удержание, а затем хочет отменить его? как я могу сделать это поле снова несуществующим?

  4. Вы, ребята, даже думаете, что это хороший подход? почему это лучше чем тот, который я сделал? (Я знаю, что этот вопрос самоуверенный, хотел бы услышать ваши мысли об этом).

Большое спасибо!

...