RN备忘

1,Application simpleAPP has not been registered. This is either due to a require() error during initialization or failure to call AppRegistry.registerComponent.

原因: AppRegistry.registerComponent('testProject', () => RnListView);   这一句,要看testProject这个参数有没有写对,是不是跟应用名一样(你初始化的应用名)。

2, Adjacent JSX elements must be wrapped in an enclosing tag.

render: function() {
    return (
        <h1>something</h1>
        <div>
          something else
        </div>
    );
  }
});

原因:React element can return only one element. 官方有Q&A说明,只能返回一个element(方法中必须只能包含一个根元素),上面返回了两个element.

3,图片加载不了?

//例1:
var localImg = "./images/demo/newsImg2.png";
require( localImg );
//例2:
require( "./images/demo/newsImg2.png");

第一种情况加载不了。

原因:为了使新的图片资源机制正常工作,require中的图片名字必须是一个静态字符串,这是React规定.

4,

(1). In next release empty section headers will be rendered. In this release you can user 'enableEmptySections' flag to render empty section headers.

解决:找到node_modules下的react-native-gifted-listview,在ListView下 加个 enableEmptySections = {true} 就可以解决了。

(2). Circular indeterminate 'ProgressBarAndroid' is deprecated. Use 'ActivityIndicator' instead.

解决:找到node_modules下的react-native-gifted-spinner,修改组件.

5,this的作用域:

_pressRow(title){
          Alert.alert( 'Alert Title', "fuck",[{ text: 'OK', onPress: () => console.log('OK Pressed!')}])
    }
_renderRowView(rowData) {
     return (
          <TouchableHighlight
               underlayColor='#c8c7cc'
               onPress={ () => this._pressRow(rowData.title)}>
          </TouchableHighlight>
     );
}
render() {
     return (
          <ScrollView>
               <ListView
                    dataSource={this.state.dataSource}
                    renderRow={ this._renderRowView}/>
          </ScrollView>
     );
}

原因:renderRow={ this._renderRowView},里面渲染的列里面的this不再是最外层的this,需要改成this._renderRowView.bind(this)。此处this指代的是ListView的cell.

6.在使用Navigator的同时使用ListView或ScrollView,后两者的头部会多出一些空间。

将automaticallyAdjustContentInsets属性设为{false}.

7.Invariant Violation: onlyChild must be passed a children with exactly one child

一般是Touchable开头的几个组件,如果没有子元素或者指定多个并列子元素都会报错。



评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值