【问题标题】:Cannot read properties of null (reading 'type')无法读取 null 的属性(读取“类型”)
【发布时间】:2021-11-28 05:55:17
【问题描述】:

我的地图有问题,我不明白为什么它会给我错误无法读取 null 的属性,数组中的元素也不存在任何空值,所以我不明白为什么会发生此错误我。

state = {
    tableHead: [
        '', 'Lunedi', 'Martedi', 'Mercoledi'
    ],
    tableData: {
        value: [
            [{ name: 'David', event1: { test: 'prova', test1: 'prova2' }}],
            [{ name: 'Lorenz', event1: { test: ['2', 'test'] }, event2: '3', event3: '4' }],
            [{ name: 'Victor', event1: { test: ['2', 'test'] }, event2: '3', event3: '4' }],
            [{ name: 'Franklyn', event1: { test: ['2', 'test'] }, event2: '3', event3: '4' }],
        ],
    },

这是我的组件渲染:

                            <Row data={this.state.tableHead} style={styles.head} textStyle={styles.text} />

                            {
                                this.state.tableData.value.map((rowData, index) => {
                                    console.log('test', rowData),
                                        <TableWrapper key={index} style={styles.row}>
                                            {
                                                rowData.map((item, index) => {
                                                    console.log('item', item.name),
                                                        <Text textStyle={styles.text}>{item.name} </Text>
                                                })
                                            }
                                        </TableWrapper>
                                })
                            }

                        </Table>
                 

【问题讨论】:

    标签: javascript reactjs react-native


    【解决方案1】:

    很简单,只需添加 ?地图前。示例:

    this.state.tableData?.value?.map [your code]
    
    rowData?.map [your code]
    

    【讨论】:

    • 考虑解释? 运算符是什么以及它如何解决 OPs 问题
    【解决方案2】:

    WillMount

    state = undefined;
    

    DidMount:

    state = <your data>;
    

    你的渲染函数在状态有值之前运行

    解决办法是:你必须先检查数据

    this.state.tableData?.value?.map
    rowData?.map
    

    检查这个:Optional Chaining

    【讨论】:

      猜你喜欢
      • 2023-01-31
      • 2021-12-03
      • 1970-01-01
      • 1970-01-01
      • 2019-11-02
      • 2022-01-19
      • 2022-01-12
      • 2021-12-04
      • 2022-01-06
      相关资源
      最近更新 更多