ReactJs:如何使用if else一起改变多个div的颜色

塔米

我需要一些建议,如何使用if-else条件相应地更新多个div的颜色我正在创建一个进度条,其中的值将异步更改,因此要相应地更改div。

例如:如果value是1到10,则第一个div将被着色;如果value是10到20,则div 1和div 2都需要着色,依此类推。请任何帮助/建议。

代码

class TestPage extends Component {

  constructor(props) {
    super(props)
    
    this.divStyle = {
      backgroundColor: "lightgray"
    } 
        
  }

  progressValue(value) {
    if(value >= 0 && value <= 10){
      
      this.divStyle = {
        backgroundColor: "red"
        } 
      
    } else if (value >= 10 && value <= 20) {
      this.divStyle = {
        backgroundColor: "green"
        } 
    }
  }

  render() {
    const value = 30 ;
    this.progressValue(value);
    
    return (
          <div class="container">
            <div class="progress-segment">
              <div class="item " id="item" style={this.divStyle}></div>
              <div class="item "></div>
              <div class="item "></div>
              <div class="item "></div>
              <div class="item"></div>
              <div class="item "></div>
              <div class="item"></div>
              <div class="item"></div>
              <div class="item "></div>
              <div class="item"></div>
              <div class="item"></div>
              <div class="item"></div>
              <div class="item"></div>
              <div class="item"></div>
              <div class="item"></div>

            </div>
          </div>
          
     );
  }
}

export default  withStyles(styles)(TestPage);

设计 在此处输入图片说明

请让我知道这是否也是处理此类案件的最佳方法

Gmoniava

下面,我将向您展示一种基于变量的惯用方式来计算样式。这也是一种进度条的示例实现:

 const SIZE = 30;

export default class Counter extends Component {
  state = {
    count: 0
  };

  decrementCount = () => {
    this.setState((state, props) => ({
      count: state.count > 0 ? state.count - 1 : state.count
    }));
  };

  incrementCount = () => {
    this.setState((state, props) => ({
      count: state.count < SIZE ? state.count + 1 : state.count
    }));
  };

  render() {
    return (
      <div>
        {this.state.count}
        <div style={{ display: "flex" }}>
          {Array(3)
            .fill(0)
            .map((x, i) => {
              return (
                <div
                  style={{
                    width: 10,
                    height: 10,
                    margin: 5,
                    background:
                      this.state.count > i * 10 &&
                      i < (this.state.count + 1) * 10
                        ? "green"
                        : "white"
                  }}
                />
              );
            })}
        </div>
        <button onClick={this.decrementCount}>-</button>
        <button onClick={this.incrementCount}>+</button>
      </div>
    );
  }
}

本文收集自互联网,转载请注明来源。

如有侵权,请联系[email protected] 删除。

编辑于
0

我来说两句

0条评论
登录后参与评论

相关文章

来自分类Dev

如何使用 dplyr 改变多个变量?

来自分类Dev

如何将Pikaday与ReactJS一起使用?

来自分类Dev

如何在javascript中正确制作div标签以与reactjs一起使用

来自分类Dev

一个接一个地改变多个div的颜色

来自分类Dev

如何使用 ReactJS 从多个 URL 获取数据?

来自分类Dev

如何使用 ReactJS 打开多个消息框

来自分类Dev

将Browserify与Reactjs一起使用

来自分类Dev

将MicroLink与Reactjs一起使用

来自分类Dev

将IF Else与IF语句一起使用

来自分类Dev

如何将 Array 与 if else 语句一起使用?

来自分类Dev

Bootstrap DIV 未填充 100% 高度以与背景颜色一起使用

来自分类Dev

如何将本地存储与apollo-client和reactjs一起使用?

来自分类Dev

如何将 redux-connect 与 reactjs 和 js-classes 一起使用?

来自分类Dev

如何一起发送多个包裹?

来自分类Dev

`sort_by`如何与多个字段一起使用?

来自分类Dev

如何让多个datepicker与altFields一起使用?

来自分类Dev

与Teamcity中的多个TFS分支一起使用。如何?

来自分类Dev

如何将QVector与多个对象一起使用

来自分类Dev

如何将AdControl与多个AdUnitId一起使用?

来自分类Dev

如何将componentsSeparatedByString与多个对象一起使用

来自分类Dev

如何与Spyne一起使用多个装饰器

来自分类Dev

如何将ArgumentOutOfRangeException与多个参数一起使用?

来自分类Dev

return如何与JavaScript中的多个变量一起使用?

来自分类Dev

如何将Safeargs与多个navGraphs一起使用

来自分类Dev

如何使用猫鼬一起搜索多个查询?

来自分类Dev

如何将didFinishPickingMedia与多个UIImage一起使用

来自分类Dev

如何使多个变量函数与向量一起使用

来自分类常见问题

与多个execStart一起使用

来自分类Dev

与多个订户一起使用MQTT

Related 相关文章

  1. 1

    如何使用 dplyr 改变多个变量?

  2. 2

    如何将Pikaday与ReactJS一起使用?

  3. 3

    如何在javascript中正确制作div标签以与reactjs一起使用

  4. 4

    一个接一个地改变多个div的颜色

  5. 5

    如何使用 ReactJS 从多个 URL 获取数据?

  6. 6

    如何使用 ReactJS 打开多个消息框

  7. 7

    将Browserify与Reactjs一起使用

  8. 8

    将MicroLink与Reactjs一起使用

  9. 9

    将IF Else与IF语句一起使用

  10. 10

    如何将 Array 与 if else 语句一起使用?

  11. 11

    Bootstrap DIV 未填充 100% 高度以与背景颜色一起使用

  12. 12

    如何将本地存储与apollo-client和reactjs一起使用?

  13. 13

    如何将 redux-connect 与 reactjs 和 js-classes 一起使用?

  14. 14

    如何一起发送多个包裹?

  15. 15

    `sort_by`如何与多个字段一起使用?

  16. 16

    如何让多个datepicker与altFields一起使用?

  17. 17

    与Teamcity中的多个TFS分支一起使用。如何?

  18. 18

    如何将QVector与多个对象一起使用

  19. 19

    如何将AdControl与多个AdUnitId一起使用?

  20. 20

    如何将componentsSeparatedByString与多个对象一起使用

  21. 21

    如何与Spyne一起使用多个装饰器

  22. 22

    如何将ArgumentOutOfRangeException与多个参数一起使用?

  23. 23

    return如何与JavaScript中的多个变量一起使用?

  24. 24

    如何将Safeargs与多个navGraphs一起使用

  25. 25

    如何使用猫鼬一起搜索多个查询?

  26. 26

    如何将didFinishPickingMedia与多个UIImage一起使用

  27. 27

    如何使多个变量函数与向量一起使用

  28. 28

    与多个execStart一起使用

  29. 29

    与多个订户一起使用MQTT

热门标签

归档