react-native ListView 通过Navigator传递数据

来源:互联网 发布:快速借到钱的软件 编辑:程序博客网 时间:2024/05/16 17:41

开发环境: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
原创粉丝点击