"要素タイプが無効であると予想されます..."というエラーが発生しました。私はインポート/エクスポート方法が間違っていますモジュールは、私は何がわからない。 MyMenuコンポーネントをMySidebar.jsにインポートするにはどうすればよいですか?代わりにexport default class MyMenu extends Component
のReactネイティブで別のファイルからコンポーネントをエクスポート/インポートするのが難しい
//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文=> 'import MyMenu from './MyMenu';'で終わるファイルタイプを削除します。かなりのことですが、 ''は、 'menu'がコンポーネントであるところ、jsx構文に誤りがあります。あなたはそれを達成するために何をしたいですか? –
NiFi
私は他のインポートが.jsファイルをインポートすることによって動作しているので、私はそれがファイルタイプだとは思わない(私はそれを試みた)。サイドメニューからのAPIであるに関しては、ここからサンプルコードをコピーしました:https://github.com/react-native-community/react-native-side-menu –
厳密には標準に準拠していないにもかかわらず、実際に.js接尾辞の動作を使用しているように見えます。私がすることは、具体的に何が壊れているかを見つけるまで、コードの一部を削除/単純化することによって、問題の原因を絞り込むことです。例えば'SideBar'の' render'メソッドの動作から ' 'のみを返しますか? –
NiFi