天天看点

React-Native报错之 ***is not a function

错误信息如下:

React-Native报错之 ***is not a function

pushToNewsDetail 是一个自定义的函数.

在 TouchableOpacity 的 onPress 里调用该自定义函数.如下:

_renderItem({item}){
        return (

            <TouchableOpacity activeOpacity={0.5} onPress={() => this.pushToNewsDetail(item)}>
                <View style={styles.cellStyle}>
                    <View style={styles.leftViewStyle}>
                        <Image source={{uri:item.imgsrc}} style={styles.imgStyle}/>
                    </View>
                    <View style={styles.rightViewStyle}>
                        <Text style={styles.titleStyle}>{item.title}</Text>
                        <Text style={styles.subTitleStyle}>{item.digest}</Text>
                        <Text style={styles.flowTitleStyle}>{item.votecount}跟帖</Text>
                    </View>
                </View>
            </TouchableOpacity>

       )
    }
           

解决办法:

在constructor里面 加上

this._renderItem = this._renderItem.bind(this);
           

或者:

onPress={this.pushToNewsDetail.bind(this)}
           

继续阅读