Tôi đang cố gắng sử dụng plugin này trong dự án của tôi https://github.com/rt2zz/react-native-drawer. Tôi có thể chạy ví dụ đúng cách nhưng gặp sự cố khi tích hợp nó.refs này đang nhận được không xác định trong phương pháp
Tôi gặp lỗi trong phương thức openDrawer. "Không thể đọc ngăn thuộc tính không xác định"
Tôi đoán rằng tôi không xác định và sử dụng lớp theo đúng cách như (tôi mới thành javascript OOP) như ví dụ: sử dụng React.createClass({
không giống như của tôi như mở rộng Thành phần và có hàm tạo.
Các mã có liên quan từ lớp học của tôi như sau.
class Search extends Component {
constructor(props) {
super(props);
this.state = {
isLoading: true,
dataSource: new ListView.DataSource({
rowHasChanged: (row1, row2) => row1 !== row2
})
};
}
openDrawer(){
this.refs.drawer.open()
}
getInitialState(){
return {
drawerType: 'overlay',
}
}
Render là
render() {
if (this.state.isLoading) {
return this.renderLoadingView();
}
var controlPanel = <MyControlPanel closeDrawer={() => {this.refs.drawer.close()}} />
return (
<View>
<View style={styles.topBar}>
<Drawer
ref="drawer"
>
<MyMainView
/>
</Drawer>
<Text style={styles.topBarMenu}>☰</Text>
<Text style={styles.topBarTitle}>เงินปันผล</Text>
<Text style={styles.topBarRight}></Text>
</View>
Cảm ơn rất nhiều vì đã giải thích chi tiết về những gì tôi không hiểu. Chỉ trong trường hợp nếu ai đó (tương lai) muốn khắc phục nhanh, dưới đây là mã một dòng bạn cần đặt trong hàm tạo. 'this.openDrawer = this.openDrawer.bind (điều này)' – cjmling
Cảm ơn bạn @cjmling, công cụ sửa lỗi nhanh của bạn hoạt động như một sự quyến rũ – david72