реакция-родной: ящик не открывается - PullRequest
0 голосов
/ 19 марта 2020

Я новичок в реакции на родную и пытаюсь добавить ящик в свое приложение. Я делюсь своим кодом с вами.

export default class Dashboard extends React.Component {
constructor(props){
  super(props);
  this.state = {

   }
}
closeControlPanel = () => {
this._drawer.close()
};
 openControlPanel = () => {
 this._drawer.open()
 };
const drawerStyles = {
   drawer: { shadowColor: '#000000', shadowOpacity: 0.8,backgroundColor:'' shadowRadius: 3},
   main: {paddingLeft: 3},
}
render(){
 let drawerContent = [];
drawerContent.push(
     <View style={{ backgroundColor:'red', textAlign:'center' }}>
        <Text style={{ color:'#ffffff', fontSize:17, alignSelf:'center' }}>Hiiiiiiiiiii</Text>
     </View>
  );
<Drawer
      type="overlay"
      tapToClose={true}
      content = {drawerContent}
      openDrawerOffset={0.2} // 20% gap on the right side of drawer
      panCloseMask={0.2}
      closedDrawerOffset={-3}
      styles={drawerStyles}
      tweenHandler={(ratio) => ({
        main: { opacity:(2-ratio)/2 }
      })}
    >
    </Drawer>
}
}

Может кто-нибудь сказать мне, где должно быть содержимое ящика и как писать открывать и закрывать функциональность ящика. Спасибо ...

1 Ответ

0 голосов
/ 19 марта 2020

вы не указали свойство ref на Drawer

Попробуйте добавить это.

<Drawer
      ref={c => this._drawer = c} // <==== Add this line
      type="overlay"
      tapToClose={true}
      content = {drawerContent}
      openDrawerOffset={0.2} // 20% gap on the right side of drawer
      panCloseMask={0.2}
      closedDrawerOffset={-3}
      styles={drawerStyles}
      tweenHandler={(ratio) => ({
        main: { opacity:(2-ratio)/2 }
      })}
    >
    </Drawer>
...