In meiner reaktionsnativen App habe ich eine TabBar implementiert und strebe nun an, dass verschiedene Komponenten (die jeweils in ihren eigenen Klassen definiert sind) auf die Auswahl jedes Tabs geladen werden. Allerdings erhalte ich gerade diesen Fehler: "onlyChild muss ein Kind mit genau einem Kind übergeben", wenn ich versuche, einen Tab auf der TabBar auszuwählen.Fehler mit mehreren Komponenten/Klassen für TabBar in reaktionsnativen?
var Create = require('./Create');
var Feed = require('./Feed');
var Icon = require('react-native-vector-icons/Ionicons');
var HomePage = React.createClass({
render: function() {
return (
<TabBarIOS
tintColor="white"
barTintColor="darkslateblue">
<Icon.TabBarItemIOS
title="FEED"
iconName="ios-star"
selectedIconName="ios-star"
selected={this.state.selectedTab === 'feed'}
onPress={() => {
this.setState({
selectedTab: 'feed',
});
}}>
</Icon.TabBarItemIOS>
<Icon.TabBarItemIOS
title="CREATE"
selected={this.state.selectedTab === 'create'}
iconName="ios-person"
selectedIconName="ios-person"
onPress={() => {
this.setState({
selectedTab: 'greenTab',
});
}}>
</Icon.TabBarItemIOS>
</TabBarIOS>
);
},
});
EDIT: Einschließlich Feed.js:
var React = require('react-native');
var {
StyleSheet,
View,
Text,
Component
} = React;
var styles = StyleSheet.create({
description: {
fontSize: 20,
textAlign: 'center',
color: '#FFFFFF'
}
});
class Feed extends Component {
constructor(props) {
super(props);
}
render() {
return (
<View style={styles.container}>
<Text style={styles.description}>
Feed page!
</Text>
</View>
);
}
}
module.exports = Feed;
Ich kann nicht feststellen, was diesen Fehler verursacht und ist auch nicht sicher, ob dies der richtige Weg ist, verschiedene Komponenten unterschiedlicher geht zum Laden Dateien. Jeder Einblick würde sehr geschätzt werden.
hi @Mihir, habe ich meine Datei geändert, um _render-Funktionen zu verwenden, und bekomme immer noch den gleichen Fehler. Könnte es daran liegen, dass in der Ansicht selbst etwas falsch ist (z. B. die Datei Feed.js?) – user3802348
@ user3802348 Können Sie Ihre Antwort mit Ihrer Datei feed.js aktualisieren? – Mihir
gerade aktualisiert es! @Mihir – user3802348