首页
学习
活动
专区
圈层
工具
发布
社区首页 >问答首页 >如何获取芯片上的名称或芯片的索引?

如何获取芯片上的名称或芯片的索引?
EN

Stack Overflow用户
提问于 2017-04-06 21:37:50
回答 1查看 93关注 0票数 0

1)我正在使用以下方法创建多个芯片(Material Design)。在React中

代码语言:javascript
复制
<div style={styles.wrapper} className="container">

   {
       arrayName.map((row, index)=>(
       <Chip
         style={styles.chip}
         key={index}
         onTouchTap={handleTouchTap}
       >

         {row.name}
       </Chip>
     ))
   }

 </div>

我无法通过使用"event.target.value“从事件处理程序中获取值。有没有其他方法可以在芯片上获取值?

代码语言:javascript
复制
arrayName contains name of programming languages like Angular, React etc.

2)可以根据我设置的索引改变芯片的颜色吗?

EN

回答 1

Stack Overflow用户

发布于 2017-04-06 21:58:34

您可以将indexvalue直接bindonTouchTap函数,直接取值。

绑定名称:

代码语言:javascript
复制
<div style={styles.wrapper} className="container">
   {
       arrayName.map((row, index)=>(
          <Chip
             style={styles.chip}
             key={index}
             onTouchTap={this.handleTouchTap.bind(this, row.name)}
          >    
             {row.name}
          </Chip>
      ))
   }

 </div>

handleTouchTap(name){
   console.log('name:', name);
}

绑定索引:

代码语言:javascript
复制
<div style={styles.wrapper} className="container">
   {
       arrayName.map((row, index)=>(
          <Chip
             style={styles.chip}
             key={index}
             onTouchTap={this.handleTouchTap.bind(this, index)}
          >
             {row.name}
          </Chip>
      ))
   }
</div>

handleTouchTap(index){
   console.log('name:', arrayName[index].name);
}

更新

要为芯片指定不同的颜色,请首先在To数组中定义颜色代码,如下所示:

代码语言:javascript
复制
let colors = ['#color1', '#color2', '#color3', '#color4'....];

然后使用Math.floor(Math.random() * colors.length);0 to colors.length的范围内随机选择一个no,将该颜色分配给芯片,如下所示:

代码语言:javascript
复制
 style={{backgroundColor: colors[Math.floor(Math.random() * colors.length)]}}

看起来不错。

票数 1
EN
页面原文内容由Stack Overflow提供。腾讯云小微IT领域专用引擎提供翻译支持
原文链接:

https://stackoverflow.com/questions/43256878

复制
相关文章

相似问题

领券
问题归档专栏文章快讯文章归档关键词归档开发者手册归档开发者手册 Section 归档