小编nwi*_*s36的帖子

通过map函数Re​​act Native传递参数

我刚刚学习了React Native,我想用动态数据创建一系列按钮.我目前的代码是:

var locations = this.state.campus.map(function(item, key){
            return(
                <TouchableHighlight key={key}
                style={[styles.button, (this.state.location==={item} && styles.buttonPressed)]}
                underlayColor='#dddddd'
                onPress={()=>this.buttonPress({item})} >
               <Text style={
                   styles.plainText}>{item}</Text>
            </TouchableHighlight>
           )
Run Code Online (Sandbox Code Playgroud)

我的问题在于线条

style={[styles.button, (this.state.location==={item} && styles.buttonPressed)]}
Run Code Online (Sandbox Code Playgroud)

onPress={()=>this.buttonPress({item})}
Run Code Online (Sandbox Code Playgroud)

我正在尝试使用地图函数动态生成这些行.如果我使用静态数据(即单独生成每个按钮),但这些代码行完美无缺,但使用动态数据失败.代码确实产生了一个显示,所以问题不在于渲染,问题在于功能.

按下按钮,我得到的错误信息未在对象中定义,而样式只会导致整个显示不呈现.

很明显,动态数据({item})在Text元素内部工作,但在作为数据传递给其他两个元素时则不起作用.我尝试使用{{item}}但这会引发语法错误.

有没有办法在React Native中处理这样的动态数据?

native dynamic reactjs

10
推荐指数
1
解决办法
1万
查看次数

标签 统计

dynamic ×1

native ×1

reactjs ×1