const [filters, setFilters] = useState({
category: '',
});
const makeFilter = (property, newFilterValue) => () => {
setFilters({
...filters,
[property]: newFilterValue,
});
};
<ul>
<li onClick={makeFilter('category', 'Access Control System')}>Access Control System</li>
<li onClick={makeFilter('category', 'Accessories')}>Accessories</li>
<li onClick={makeFilter('category', 'Auto Door System')}>Auto Door System</li>
<li onClick={makeFilter('category', 'Backup Battery')}>Backup Battery</li>
<li onClick={makeFilter('category', 'Card & Weigand Reader')}>Card & Weigand Reader</li>
<li onClick={makeFilter('category', 'CCTV Recorders')}>CCTV Recorders</li>
<li onClick={makeFilter('category', 'CCTV Security Camera System')}>CCTV Security Camera System</li>
<li onClick={makeFilter('category', 'Display Monitor')}>Display Monitor</li>
<li onClick={makeFilter('category', 'Draka Cable')}>Draka Cable</li>
<li onClick={makeFilter('category', 'IP PBX System')}>IP PBX System</li>
我通过onClick在li中使用了我的过滤器功能。是否可以使li一次只能选择一个?
2条答案
按热度按时间rhfm7lfc1#
点击时应为
onClick={() => makeFilter('property', 'newFilterValue')}
请更换所有的锂
与
bpzcxfmw2#
我不确定我是否正确地解释了您的问题,但我相信您会好奇是否可以使它一次只能选择一个
<li>
元素。使用
<input>
元素和共享相同name
的type="radio"
可以最容易地实现这一点。在这里,所有的
input
都有相同的name
,所以如果你选择一个然后尝试选择另一个它将删除以前的选择。