【发布时间】:2018-12-07 06:59:57
【问题描述】:
我正在尝试在我的 React Native 应用程序中使用 panResonder。我尝试使用类属性而不是构造函数和super() 这样做。代码如下:
export default class Deck extends Component {
panResponder = PanResonder.create({
onStartShouldSetPanResponder: () => true,
onPanResponderMove: (event, gesture) => {},
onPanResponderRelease: () => {}
});
state = { panResponder };
renderCards = () => this.props.data.map(item => this.props.renderCard(item));
render() {
return <View>{this.renderCards()}</View>;
}
}
不幸的是,React 抱怨 panResponder 未定义。那个怎么样?我必须在这里使用构造函数吗?
以下代码是唯一适合我的:
export default class Deck extends Component {
constructor(props) {
super(props);
const panResponder = PanResonder.create({
onStartShouldSetPanResponder: () => true,
onPanResponderMove: (event, gesture) => {},
onPanResponderRelease: () => {}
});
this.state = { panResponder };
}
renderCards = () => this.props.data.map(item => this.props.renderCard(item));
render() {
return <View>{this.renderCards()}</View>;
}
}
【问题讨论】:
标签: javascript reactjs react-native ecmascript-6 class-properties