Отображение и скрытие столбцов таблицы семантического пользовательского интерфейса React

#reactjs #semantic-ui #semantic-ui-react

#reactjs #семантический пользовательский интерфейс #semantic-ui-react

Вопрос:

В версии 1.2.1 таблицы semantic UI React я не могу найти никакого собственного поведения для отображения или скрытия столбцов в :https://react.semantic-ui.com/collections/table/#types-pagination

И на самом деле, я не использую столбцы, только строки, как в первом примере:

 <Table celled>
    <Table.Header>
      <Table.Row>
        <Table.HeaderCell>Header</Table.HeaderCell>
        <Table.HeaderCell>Header</Table.HeaderCell>
        <Table.HeaderCell>Header</Table.HeaderCell>
      </Table.Row>
    </Table.Header>

    <Table.Body>
      <Table.Row>
        <Table.Cell>
          <Label ribbon>First</Label>
        </Table.Cell>
        <Table.Cell>Cell</Table.Cell>
        <Table.Cell>Cell</Table.Cell>
      </Table.Row>
      <Table.Row>
        <Table.Cell>Cell</Table.Cell>
        <Table.Cell>Cell</Table.Cell>
        <Table.Cell>Cell</Table.Cell>
      </Table.Row>
      <Table.Row>
        <Table.Cell>Cell</Table.Cell>
        <Table.Cell>Cell</Table.Cell>
        <Table.Cell>Cell</Table.Cell>
      </Table.Row>
    </Table.Body>
</Table>
  

Нужно ли мне просто использовать стандартный hmtl css display none? Я бы подумал, что в таблицу будут встроены какие-то свойства?

Комментарии:

1. В react вы можете сделать это с помощью управления состоянием. Пример: 1. В конструкторе создайте this.state={скрыть:true} в таблице, если вы хотите скрыть строку таблицы, напишите так: { (this.state.hide==false)?null: Строка> Ячейка> Ячейка Ячейка> Ячейка> Ячейка Ячейка> Ячейка> Ячейка Ячейка> Строка> Body> } Эта строка отображаться не будет. Это связано с тем, что рендеринг react основан на состоянии. Если вы хотите скрыть, вам нужно установить состояние как hide = true, т.Е. this.setState({скрыть:true})

Ответ №1:

В react вы можете сделать это с помощью управления состоянием.

Пример:

  1. В конструкторе создайте

    this.state={скрыть:true}

в таблице, если вы хотите скрыть строку таблицы,

напишите так:

 {
(this.state.hide==false)?null:<Table.Row>
        <Table.Cell>Cell</Table.Cell>
        <Table.Cell>Cell</Table.Cell>
        <Table.Cell>Cell</Table.Cell>
      </Table.Row>
    </Table.Body>
}
  

Эта строка отображаться не будет.
Это связано с тем, что рендеринг react основан на состоянии.

Если вы хотите скрыть, вам нужно установить состояние как hide = true, т.Е.

 this.setState({hide:true})
  

Комментарии:

1. спасибо, Айяз, не могли бы вы указать мне, где в документах я могу это найти? react.semantic-ui.com

2. если вы можете поделиться кодом, я сделаю это за вас, потому что это логичный способ. т. Е. Когда вы отключаете кнопку при вызове api и показываете загрузчик, и когда возвращается ответ, вы скрываете загрузчик, это также работает аналогично.