react遍历以后没插入到标签里面去

ListItems已经在state声明了
下面的代码是在成功拿到接口数据success里面调用的

that.state.ListItems = that.state.dataList.map(item => (
          <div className="list" key={item.goodsID}>
            <img src={item.goodsListImg} alt="" />
            <div className="detail">
              <div className="title">{item.goodsName}</div>
              <div className="price">
                ¥<span>{item.price}</span>
              </div>
            </div>
          </div>
        ));
        console.log(that.state.ListItems);//这个地方打印出来数据了,下图

图片描述
render里面

  render() {
    return (
      <div className="hot">
        <div id="mescroll" className="mescroll">
          {this.state.ListItems}
        </div>
      </div>
    );
  }

不知道我这种动态渲染的方式对不对啊

阅读 2.1k
3 个回答

state的作为dom标签,在react里面唯一产生改变的函数就是this.setState, 才可以发生渲染

完全不对,请去看文档进行学习,不要自己进行发明创造

 <div className="hot">
    <div id="mescroll" className="mescroll">
      {this.state.ListItems ? this.creatDom(this.state.ListItems):null}
    </div>
  </div>

creatDom(data){
    return (
      data.map((item) => {
        return (
            <div className="list" key={item.goodsID}>
                <img src={item.goodsListImg} alt="" />
                <div className="detail">
                  <div className="title">{item.goodsName}</div>
                  <div className="price">
                    ¥<span>{item.price}</span>
                  </div>
                </div>
              </div>
        )
      })
    )
}
撰写回答
你尚未登录,登录后可以
  • 和开发者交流问题的细节
  • 关注并接收问题和回答的更新提醒
  • 参与内容的编辑和改进,让解决方法与时俱进
推荐问题