scrollView 宽高无效

Environment

  1. react-native -v:0.46.4
  2. node -v:v8.3.0
  3. npm -v:5.3.0
  4. yarn --version:0.27.5
  • Target Platform: android && ios
  • Development Operating System: mac10.12.5
  • Build tools:webstorm

Steps to Reproduce

code like that:

   renderTab = ()=> {
        return (
            
            我发起的
            {(this.state.data&&this.state.data.myIsLeader===1)?带我审批:null}
            {(this.state.data&&this.state.data.myIsLeader===1)?我已审批:null}
        )
    };

    render(){
        return (
            
                

            
                {this.renderTab()}
        
        );
    }

期望效果

like that:


scrollView 宽高无效_第1张图片
expected

实际效果

scrollView 宽高无效_第2张图片
actual

解决:
删除 style={{width:WIDTH,height:HEIGHT}}
或者设置style={{flex:1}} 。
记住ScrollView必须有一个确定的高度才能正常工作,因为它实际上所做的就是将一系列不确定高度的子组件装进一个确定高度的容器(通过滚动操作)。要给一个ScrollView确定一个高度的话,要么直接给它设置高度(不建议),要么确定所有的父容器都已经绑定了高度。在视图栈的任意一个位置忘记使用{flex:1}都会导致错误,你可以使用元素查看器来查找问题的原因。
所以scrollview的属性不光和自己有关还和父组件栈的属性有关。
GitHub:https://github.com/facebook/react-native/issues/15581

你可能感兴趣的:(scrollView 宽高无效)