我一直在尝试在我的android应用程序中实现这个side menu(在本机反应中)。我尝试通过将它放在一个类中并添加分号来修改它,但每次启动它时应用程序都会崩溃。
这是我的完整代码:
ps:我的编辑器(visual studio code)在第24行指出了一个错误(onSideMenuChange (isOpen: boolean) {
),但我不确定这行是什么错误。
import { SideMenu, List, ListItem } from 'react-native-elements';
import {
AppRegistry,
StyleSheet,
Text,
View
} from 'react-native';
export default class myApp extends Component {
constructor () {
super();
this.state = {
isOpen: false
};
this.toggleSideMenu = this.toggleSideMenu.bind(this);
}
onSideMenuChange (isOpen: boolean) //error: [js] 'types' can only be used in a .ts file.
{
this.setState({
isOpen: isOpen
});
};
toggleSideMenu () {
this.setState({
isOpen: !this.state.isOpen
});
};
render () {
const MenuComponent = (
<View style={{flex: 1, backgroundColor: '#ededed', paddingTop: 50}}>
<List containerStyle={{marginBottom: 20}}>
{
list.map((l, i) => (
<ListItem
roundAvatar
onPress={() => console.log('Pressed')}
avatar={l.avatar_url}
key={i}
title={l.name}
subtitle={l.subtitle}
/>
))
}
</List>
</View>
)
return (
<SideMenu
isOpen={this.state.isOpen}
onChange={this.onSideMenuChange.bind(this)}
menu={MenuComponent}>
<App toggleSideMenu={this.toggleSideMenu.bind(this)} />
</SideMenu>
);
}
}
AppRegistry.registerComponent('myApp', () => myApp);
答案 0 :(得分:1)
onSideMenuChange (isOpen: boolean) //error: [js] 'types' can only be used in a .ts file.
{
this.setState({
isOpen: isOpen
});
};
这里不需要冒号,从line onSideMenuChange(isOpen)中删除冒号并且它将起作用