Не удается прочитать свойство 'include' из неопределенного в reactjs? - PullRequest
0 голосов
/ 21 марта 2020

Я пытаюсь решить, включает в себя неопределенные, для этого я использую && оператор.

 isAllChecked = label => {
    const { permission } = this.state;

     false value - I need false value when I get data from API,
     But I got an error that includes undefined. for that, I used && operator
     but I got a true value, I don't need to get true value

      const data = !groupItems.some(
      x => !permission && !permission[label] && !permission[label].includes(x)
    );

    // console.log(true) //true

    const data = !groupItems.some(
      x => !permission[label].includes(x)
    );

   // I got a false value using static data without using && operator

  // data output: false (accepted output- getting using static data, but  I need 
   to get the same value when I get data from API, I got an error includes undefined without using && operator)

    return data;

  };

Однако, если я получил данные из API, отображается этот метод не может прочитать свойство неопределенным, и когда я собираюсь разрешить «включает» неопределенного, я использовал оператор && и получил истинное значение.

 Cannot read property 'includes' of undefined. 

Мне не нужно истинное значение, мне нужно ложное значение для первоначально смонтированного компонента.

Мой вопрос заключается в том, как я могу решить Не удается прочитать свойство 'include' из неопределенного по используя && оператор или что-то еще.
Вот моя песочница с кодом: https://codesandbox.io/s/stackoverflow-a-60764570-3982562-v1-um18k

1 Ответ

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

Вместо некоторых вы можете использовать каждый, чтобы проверить все.

isAllChecked = label => {
    const { permission } = this.state;
    const data = groupItems.every(
      x => permission && permission[label] && permission[label].includes(x)
    );
    return data;
  };
Добро пожаловать на сайт PullRequest, где вы можете задавать вопросы и получать ответы от других членов сообщества.
...