问题1:
View嵌套ScrollView时,ScrollView不能滚动。
View嵌套ListView时,ListView不能滚动。
react native scrollview inside View doesn't scroll.
react native ListVIew inside View doesn't scroll.
解决方案:
render(){return(中的根节点往往是View,而其内嵌套一个ScrollView发现无法滚动,此时检查根节点View的style必须要有flex: 1,这个样式。
问题2:
每层的Component都实现响应返回键事件,导致连续响应。
解决方案:
如果当前页是第二页,那么通过navigator.getCurrentRoutes().length > 2判断,如果true则,return false。即不拦截。因为当前是第二页,所以length是不会超过2的。但第三页不是执行了navigator.pop()了吗,所以第三页返回后,navigator.getCurrentRoutes().length 应该等于 2,但事实不是这样。事实navigator.getCurrentRoutes().length 还是等于3.
问题3:
Navigator中route是个什么对象?
回答:
Navigator是一个数组,所以会有添加数组元素的push()方法,移除数组最后元素的pop()方法,复制数组的slice()方法,返回元素索引的indexOf('name')方法,
而,所谓的route对象就是Navigator的元素,其实是一个JSON对象。
也就是:navigator = [ {name : 'andy',age : 12},{name : 'david',age : 13} ]
所以route是一个JSON对象,内部字段遵从JSON规范,所以并不需要一定要有name字段,或者一定要有index字段,这些字段都是自己定义的字段。
原文链接:https://www.f2er.com/react/306240.html