点击切换

完整es6代码如下,实现类似于button切换效果

import React, {
    Component
} from 'react';

// 一触发setState就会重新渲染render 组件  初始渲染的时候第一个li 相等,所以class为focused,后面的为
// 点到第二个li 触发setState focused变为2
export default class Tab extends Component {
    state = {
        focused: 0
    };
    handleClick = (index) => {
        this.setState({
            focused: index
        });
    };
    render() {
        const items = ['webpack', 'react', 'babel', 'npm'];
        const {
            focused
        } = this.state;
        var that = this;
        return (
            <div className='content'>
            <ul>
                  { 
                items.map(function(item,index){
                    return (<li key={index} 
                        className={focused === index ? 'focused ': 'normal'}
                        onClick={that.handleClick.bind(null,index)}
                        >{item}</li>)
                   })
                  }
                    </ul>
            </div>
        )
    }
}
export default Tab
最后编辑于
©著作权归作者所有,转载或内容合作请联系作者
【社区内容提示】社区部分内容疑似由AI辅助生成,浏览时请结合常识与多方信息审慎甄别。
平台声明:文章内容(如有图片或视频亦包括在内)由作者上传并发布,文章内容仅代表作者本人观点,简书系信息发布平台,仅提供信息存储服务。

推荐阅读更多精彩内容