如何设置列表中的项目

德克

我有一个列表,只想设置事件处理程序上的第二项。我正在尝试设置 usinglists: this.state.lists[1]但它抛出一个错误说this.state.lists.map is not a function. 从列表中设置项目的正确方法是什么?这是我在做什么:

  constructor(props) {
    super(props);
    this.state = {
      lists: []
    };
    this.buttonAHandler = this.buttonAHandler.bind(this);
  }


 componentDidMount() {
    fetch('https://api.com')
    .then(response => response.json())
    .then(data => this.setState({ lists: data }));
 }



  buttonAHandler(e) {
    this.setState({
    lists: this.state.lists[1]
   })
  }

在我的渲染返回中,我像这样绑定处理程序。:

render(){
    return (
      <div> 

     <button onClick={this.buttonAHandler.bind(this)} >see pets</button>
旅游开发

您收到错误消息,因为单击后,lists状态从 anArray变为 a Object(数组的索引 1)。因此,如果您仍想使用该map()方法,请将处理程序更改为:

buttonAHandler(e) {
   this.setState({
       lists: [this.state.lists[1]]
   })
}

然后,新lists状态将是Array您想要的元素。

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

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

编辑于
0

我来说两句

0 条评论
登录 后参与评论

相关文章

如何为列表中的项目设置标签?

如何在项目列表中设置 ref 反应 js?

如何以角度设置动态选项列表中的选定项目

如何在F#中的特定索引处更改列表中的项目?(无法设置属性“项目”)

React Selectable Fast:如何从可选项目列表中设置和获取选中的项目

如何为列表中的单个项目(而不是整个列表)编写设置器?

当列表列表中的所有项目等于一个值时,如何设置if语句?

如何设置项目列表的默认值?

在列表中的多个索引处设置项目

为列表中的每个项目设置权重

在列表中设置特定项目符号的颜色

在列表中设置特定项目符号的颜色

如何从列表中删除项目

如何从列表中获取项目

如何从列表中隐藏项目?

如何从列表中解包项目?

如何删除列表中的项目?

如何选择列表中的项目?

如何连接列表中的项目?

如何从列表中查询项目?

如何在Xamarin Picker中设置项目列表的样式(在Android中)

如何从列表中删除项目并使项目加入

列表中的列表。如何访问其中的项目

如何设置传递给其余api的列表中每个项目的最大大小?

在类构造器中将icollection设置为列表时,如何通过索引从icollection中获取项目?

如何设置计时器以转到列表中的下一个项目?

如何为Android列表中的每三个项目设置提醒?

如何在“ v-for”列表中设置项目的类名

如何在android中工具栏的项目列表内设置开关?