在React中,要实现仅选择一个列表中的一项并更改其样式,可以通过以下步骤来完成:
以下是一个示例代码:
import React, { Component } from 'react';
class ListSelection extends Component {
constructor(props) {
super(props);
this.state = {
selectedItem: null
};
}
handleItemClick(index) {
this.setState({ selectedItem: index });
this.forceUpdate();
}
render() {
const { selectedItem } = this.state;
const listData = ['Item 1', 'Item 2', 'Item 3', 'Item 4'];
return (
<ul>
{listData.map((item, index) => (
<li
key={index}
onClick={() => this.handleItemClick(index)}
style={{ fontWeight: selectedItem === index ? 'bold' : 'normal' }}
>
{item}
</li>
))}
</ul>
);
}
}
export default ListSelection;
在上述示例代码中,ListSelection组件会渲染一个无序列表,每个列表项都会根据selectedItem属性的值来决定是否添加特定的样式。当用户点击某个列表项时,会触发handleItemClick方法,将选中项的索引存储到selectedItem属性中,并强制重新渲染组件。
这样,当用户在React中选择列表中的一项时,选中项的样式会改变,其他项则保持默认样式。
领取专属 10元无门槛券
手把手带您无忧上云