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

После входа в систему я сохраняю тип пользователя в локальном хранилище. Есть типы пользователей, которые должны видеть последний столбец таблицы реагирования. У меня есть проблемы в реализации этого.

<ReactTable
          data={data}
          filterable
          defaultFilterMethod={(filter, row) =>
            String(row[filter.id]) === filter.value}
          columns={[
            {
              Header: "Name",
              id: "name",
              accessor: "item.name",
              filterMethod: (filter, rows) =>
                matchSorter(rows, filter.value, { keys: ["name"] }),
              filterAll: true
            },
            {
              Header: "Public/Rare",
              id: "public_or_rare",
              accessor: "item.public_or_rare",
              filterMethod: (filter, rows) =>
                matchSorter(rows, filter.value, { keys: ["public_or_rare"] }),
              filterAll: true
            },
            {
              //I want to show something here if user is local or foreigner
            }
          ]}
          defaultPageSize={10}
          className="-striped -highlight"
        />

В верхней части страницы я получил тип пользователя, как показано ниже, let user_type = localStorage.getItem('user_type');

Как отобразить последний столбец, если пользователь относится к типу user?

1 Ответ

0 голосов
/ 05 мая 2019

Столбцы определены в таблице. У вас есть это определение inlined - определено в месте использования.

Вы всегда можете определить этот массив раньше и использовать (передать как свойство) ссылку на объект массива.

Определить содержимое столбцов / конфиг условно. В этом случае (последний столбец) вы можете определить базовый конфиг и условно расширить его (толчок массива) дополнительным определением столбца.

Все эти определения могут быть выполнены методом render, перед JSX-частью (return () с использованием обычного / valnilla javascript.

...