react-native ListView 通过Navigator传递数据

开发环境:RN android端+聚合数据

需要解决的任务:如何一次性为所有的ListView列表添加navigator导航,同时各自导向自己的页面,同时所有的页面可以返回到主导航页

遇到的问题:

模板页是独立的,navigator只能push模板组件,多余的数据无法传递过去,接收的数据全部为空

解决方法:

不需要传递数据,直接在本页面ListView组件的渲染函数 _renderRow 函数中创建模板组件

//。。。这里是在_renderRow渲染函数里面定义的新模板组件
class Model extends Component{
    constructor(props) {
        super(props);               
    }
    render() {
        return (
            <View style={{flex:1}}>
                <View>
                    <Text onPress={                     ()=>this.props.navigator.pop()}>返回</Text>//返回
                </View>
                <WebView
                    source={{uri:row.url}}//向模板页注入数据点
                    javascript={true}
                    domStorageEnable={true}
                />
            </View>
            )
        }
    }
//后面接着就是是_renderRow渲染ListView数据的部分,当然会有一个onPress函数,触发navigator导向各自的Model组件页了!

总结一下就是:模板组件定义咋listView内部,对所以组件可以访问_renderRow传递的数据,而不用担心this丢失,作用域变换带来的数据丢失的问题

  • 0
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 0
    评论
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值