react 评价星级

// 这是父组件

   // 先声明个取评价分数的函数   目前只有偶数分(2/4/6/8/10)对应5颗星星

    gradeNum=(num)=>{

console.log(num);

}

// 这是子组件

注 : 这是一个空心的星星 /static/images/evaluate.png'

这是一个实心的星星  /static/images/evaluateBlock.png';

import React from 'react';

export default class evaluate extends React.Component {

    constructor(props) {

        super(props);

        this.state = {

          evaluateData: {

                 evaluateUrl: '/static/images/evaluate.png'

            }, {

                  evaluateUrl: '/static/images/evaluate.png'

            }, {

              evaluateUrl: '/static/images/evaluate.png'

            }, {

              evaluateUrl: '/static/images/evaluate.png'

            },  {

              evaluateUrl: '/static/images/evaluate.png'

            } ]

        }

    }

// 点击星星是执行的逻辑

    evaluateTabImg=(i)=>{

      let arr = this.state.evaluateData;

      arr.map((val, index) => {

        if (index <= i) {

          val.evaluateUrl = '/static/images/evaluateBlock.png';

        } else {

          val.evaluateUrl = '/static/images/evaluate.png';

        }

      })

      this.setState({

        evaluateData: arr

      })

      let num = (i+1)*2;

// 调用父组件传过来的函数

      this.props.fn(num)

    }

    render(){

        return (

          <div className="evaluateContent">

              <div className="evaluateTit">

                  评价星级

              </div>

              <div className="evaluate">

                  {this.state.evaluateData.map((item, i) => {

                      return <div className="evaluateImg" key={i} onClick={this.evaluateTabImg.bind(this, i)}>

                          <img src={item.evaluateUrl} />

                      </div>

                  })}

              </div>

          </div>

        )

    }

}

©著作权归作者所有,转载或内容合作请联系作者
【社区内容提示】社区部分内容疑似由AI辅助生成,浏览时请结合常识与多方信息审慎甄别。
平台声明:文章内容(如有图片或视频亦包括在内)由作者上传并发布,文章内容仅代表作者本人观点,简书系信息发布平台,仅提供信息存储服务。

相关阅读更多精彩内容

  • 前端开发面试题 面试题目: 根据你的等级和职位的变化,入门级到专家级,广度和深度都会有所增加。 题目类型: 理论知...
    怡宝丶阅读 7,410评论 0 7
  • 前端开发面试题 <a name='preface'>前言</a> 只看问题点这里 看全部问题和答案点这里 本文由我...
    自you是敏感词阅读 4,274评论 0 3
  • 铁观音是一种什么茶? 填空题:铁观音是一种()茶 答案:A (绿茶),B(福建茶),C(工夫茶) 正确答案是:以上...
    知鱼茶室柯永旭阅读 3,947评论 0 0
  • 前段时间刚看完《穆斯林的葬礼》,接着又看了余华的《活着》。 两本书都是悲情剧。 尤其是余华的《活着》,主人公富贵历...
    樊俊宏阅读 1,472评论 0 2
  • 前些年,我们家楼下杨阿姨下岗了,在家开了个棋牌室。 想着除了能给自己找个牌搭子,还能额外赚点零花钱。 她知道我妈爱...
    咪唧阅读 4,014评论 0 1

友情链接更多精彩内容