我想在react native中使用List部分显示数据。我正在使用reduce()提取数据,但是我无法理解为什么我得到未定义的行为,请提供html或uri作为react native render html的支持。

我想将sectionList项目显示为HTML内容,SectionList的标题是specificationsData的标题。

const specificationsData = specifications.reduce( (acc, curValue) => {

            if (curValue.title !== undefined && curValue.description !== undefined){

                let newObj = {};

                newObj['data'] = curValue.description;

                newObj['title'] = curValue.title;

                console.log(curValue.title)

                acc.push(newObj);

                return acc;
            }

        }, []);

        console.log(specificationsData)


以上日志的结果:

javascript - 我如何在react native中使用sectionList显示数据?-LMLPHP

现在,我将上述数据传递到SectionList中:

import HTMLView from 'react-native-render-html';

<SectionList
                    renderItem={({item, index, section}) => <HTMLView key={index} value={item}/>}
                    renderSectionHeader={({section: {title}}) => (
                        <Text style={{fontWeight: 'bold', color: 'red'}}>{title}</Text>
                    )}
                    sections={specificationsData}
                    keyExtractor={(item, index) => item + index}
                />


如何通过传递sectionList传递显示数据和specificationsData的标题?

查看以上代码的屏幕截图:

javascript - 我如何在react native中使用sectionList显示数据?-LMLPHP

最佳答案

根据SectionList documentation,数据必须是specificationsData中的数组。更新以下行:

newObj['data'] = [curValue.description];

关于javascript - 我如何在react native中使用sectionList显示数据?,我们在Stack Overflow上找到一个类似的问题:https://stackoverflow.com/questions/52908407/

10-10 10:30