簡體   English   中英

Select React 中的表格行

[英]Select Table Row in React

我試圖在我的 React Material App 中一次只選擇一行。 我現在的問題是它突出顯示了許多行。 我只需要一次突出/選擇一行。

請檢查此代碼框鏈接

點擊這里

代碼

const [selected, setSelected] = React.useState([]);

const selectFood = (event, food) => {
  const selectedIndex = selected.indexOf(food.name);
  let newSelected = [];

  if (selectedIndex === -1) {
    newSelected = newSelected.concat(selected, food.name);
  } else if (selectedIndex === 0) {
    newSelected = newSelected.concat(selected.slice(1));
  } else if (selectedIndex === selected.length - 1) {
    newSelected = newSelected.concat(selected.slice(0, -1));
  } else if (selectedIndex > 0) {
    newSelected = newSelected.concat(
      selected.slice(0, selectedIndex),
      selected.slice(selectedIndex + 1)
    );
  }

  setSelected(newSelected);
};

const isSelected = row => selected.indexOf(row.name) !== -1;

如果您只想 select 單行 - 那么這肯定會起作用(不需要您編寫的復雜代碼)

const selectFood = (event, food) => {
    let newSelected = [food.name];
    setSelected(newSelected);
  };

工作鏈接 - https://codesandbox.io/s/highlightselect-rows-react-material-8ejbc?file=/demo.js:1016-1123

暫無
暫無

聲明:本站的技術帖子網頁,遵循CC BY-SA 4.0協議,如果您需要轉載,請注明本站網址或者原文地址。任何問題請咨詢:yoyou2525@163.com.

 
粵ICP備18138465號  © 2020-2024 STACKOOM.COM