• react使用Map方法遍历列表不显示的问题


    问题:

    在最开始搭建选项卡的时候,我的js代码是这样的

    1. import React, { Component } from 'react'
    2. import './css/02-maizuo.css'
    3. export default class App extends Component {
    4. state = {
    5. list: [
    6. {
    7. id: 1,
    8. text: '电影'
    9. },
    10. {
    11. id: 2,
    12. text: '影院'
    13. }, {
    14. id: 3,
    15. text: '我的'
    16. },
    17. ],
    18. current: 0
    19. }
    20. render() {
    21. return (
    22. <div>
    23. <ul>
    24. {this.state.list.map((item, index) => {
    25. <li
    26. key={item.id}
    27. className={this.state.current === index ? 'active' : ''}
    28. onClick={() => this.handleClick(index)}
    29. >
    30. {item.text}
    31. </li>
    32. })}
    33. </ul>
    34. </div>
    35. )
    36. }
    37. handleClick(index) {
    38. console.log(index);
    39. this.setState({
    40. current: index
    41. })
    42. }
    43. }

    有问题的部分:

    终端有提示警告信息:

    解决办法

     第一反应是这里不能使用map进行遍历数组,于是换成了forEach,但是foreach方法并不返回一个新的数组,而只是对原来的数组进行遍历。如果使用forEach遍历数组,此时没有返回任何JSX元素,因此

  • 标签还是不会被渲染出来的。

    所以,还是得使用map方法,用来返回新的数组,返回的结果包含每个元素的处理结果。针对终端的警告,是因为在箭头函数中使用了大括号 {} 来包裹 JSX,但是却没有显式的返回一个值,在React当中,当使用 {}  来包裹 JSX的时候,如果想返回一个值,这个时候需要显式的使用 return 语句。而如果将箭头函数的大括号  {} 替换成小括号 () ,这个时候,就不需要显式的使用return 语句了,也就是

     


    问题不大,但是芝士又涨喽!~

  • 相关阅读:
    java计算机毕业设计网上主题超市系统源代码+数据库+系统+lw文档
    【Python练习】task-07 函数的扩展应用
    Linux进程间通信(二)
    PyTorch 模型性能分析和优化 - 第 6 部分
    【ESP32 DEVKIT_V1】基于Arduino IDE环境搭建
    小米机型安全删除内置软件列表 miui12 miui13 可删除内置
    基础图论算法--最小生成树——prim、Kruskal算法
    Idea插件整理
    OpenCV 13(模版匹配和霍夫变换)
    【飞控开发高级教程2】疯壳·开源编队无人机-遥控整机代码走读、编译与烧写
  • 原文地址:https://blog.csdn.net/www340300/article/details/136141287