我收到一個「元素類型無效期望的字符串...」錯誤,我敢肯定,我如何導入/導出我的錯誤模塊,但我不知道是什麼。如何將MyMenu組件導入MySidebar.js? (我只把相關的代碼中,我可能已經錯過了,雖然東西)難以從React Native中的不同文件中導出/導入組件
//MySidebar.js
import MyMenu from './MyMenu.js';
class SideBar extends Component {
render() {
var menu = <MyMenu />;
return (
<SideMenu menu={menu}>
<ContentView/>
</SideMenu>
);
}
}
//MyMenu.js
export default class MyMenu extends Component {
static propTypes = {
onItemSelected: React.PropTypes.func.isRequired,
};
render() {
return (
<ScrollView scrollsToTop={false} style={styles.menu}>
<View style={styles.avatarContainer}>
<Image
style={styles.avatar}
source={{ uri, }}/>
<Text style={styles.name}>Your name</Text>
</View>
<Text
onPress={() => this.props.onItemSelected('About')}
style={styles.item}>
About
</Text>
<Text
onPress={() => this.props.onItemSelected('Contacts')}
style={styles.item}>
Contacts
</Text>
</ScrollView>
);
}
};
如果文件位於同一目錄中,請從導入語句=>'import MyMenu'./MyMenu';'中刪除文件類型。相當肯定''SideMenu menu = {menu}>',其中'menu'是一個組件,是錯誤的jsx語法。你打算如何完成? – NiFi
我不認爲它是文件類型(儘管我嘗試過),因爲我的其他導入通過導入.js文件工作。至於,這是側邊菜單的API,我從這裏複製了他們的示例代碼:https://github.com/react-native-community/react-native-side-menu –
確實看起來像使用.js後綴作品,即使它不嚴格按照標準。我所要做的就是試圖通過移除/簡化代碼來縮小問題的根源,直到找出具體突破的地方。例如,從SideBar的'render'方法工作中只返回' '? –
NiFi