我正在尝试为 like_click() 调用 touchableopacity 的 onPress,但它给了我一个错误(未定义不是对象)。
我也尝试使用此方法调用该方法,但它也给了我一个错误(找不到变量 like_click)
constructor(props){
super(props)
this.logout = this.logout.bind(this);
this.state = {
username:"",
password:"",
token:"",
firstName:"",
dataSource:""
}
**this.like_click = this.like_click.bind(this);**
this.dislike_click = this.dislike_click.bind(this);
this.workjoyPage = this.workjoyPage.bind(this);
}
**like_click(expr_id){
console.log(this.state.token);
console.log(expr_id);
var headers = new Headers();
let auth ='Bearer '+this.state.token;
headers.append("Authorization",auth);
fetch("http://diwo.nu/public/api/addExpLikes/"+expr_id, {
method: 'GET',
headers: headers,
})
.then((response) => response.json())
.then((responseJson) => {
if(responseJson.status==200){
console.log(responseJson);
this.componentDidMount();
}
}).catch((error) =>{
console.error(error);
});
}**
_renderItem ({item, index}) {
var {height, width} = Dimensions.get('window');
return (
<View style={styles.dynamic_list_view}>
<Card borderRadius={15} containerStyle={{marginLeft:12,backgroundColor:'#00a1ff'}}>
<View style={{paddingRight:10}}>
{item.user_likes==0?
**<TouchableOpacity onPress={()=>this.like_click(item.id)}>
<Image style={{width:20, height:20,marginTop:10,marginRight:5}} source={require('../../uploads/heart1.png')} />
</TouchableOpacity>**
:
<TouchableOpacity onPress={()=>dislike_click(item.id)}>
</TouchableOpacity>}
</View>
</Card>
</View>
);
}
render() {
<View style={{flex:2.2}}>
<Carousel
ref={(c) => { this._carousel = c; }}
data={this.state.dataSource}
**renderItem={this._renderItem}**
sliderWidth={350}
itemWidth={350}
autoplay={true}
autoplayDelay={2000}
loop={true}
/>
</View>
}
单击图像时我应该如何调用该函数。请帮忙。