Ich bin neu in react-native und ich schreibe meine erste große App für Android. Ich muss Schaltflächen auf dem Bildschirm dynamisch rendern und alle 3 davon in einem eigenen Ansichts-Tag schließen, damit sie in einer Zeile bleiben. Dies ist die Struktur, was ich versucheSchließen Sie jeweils 3 Tasten in ihrem eigenen <View> Tag beim Umformen
<View>
<Button />
<Button />
<Button />
</View>
<View>
<Button />
<Button />
<Button />
</View>
<View>
<Button />
<Button />
<Button />
</View>
etc...
zu erreichen, bevor ich erkannte, dass ich zu einer Gruppe müssen sie um 3 in der Ansicht Tag ich Code wie folgt aus:
render() {
const mappedButtons = reversed_buttons.map((button, i) => {
if (reversed_types[i] == 1) {return (<Floor key={i} content={button}/>)}
else {return (<Step key={i} title={button}/>)}
})
return (
<View>
{mappedButtons}
</View>)
}
Es funktioniert gut, aber ich Ich weiß nicht, wie man jeden Step-Tag innerhalb seines eigenen View-Tags schließt. Ich habe versucht, am Anfang öffnende Tag der Ansicht zurückzukehren und Schließen und Öffnen Tag jede dritte Taste, aber ich bin immer Fehler 500. Ich habe versucht, es so zu tun:
render() {
var reversed_buttons = [ ];
var reversed_types = [ ];
for (var i = buttons.length-1; i >= 0; i--) {
reversed_buttons.push(buttons[i]);
reversed_types.push(types[i]);
}
const mappedButtons = reversed_buttons.map((button, i) => {
var y = i%3;
if (i == 0){return(<View>)}
if (i == 2){return(</View><View>)}
if (reversed_types[i] == 1) {return (<Floor key={i} content={button}/>)}
else {return (<Step key={i} title={button}/>)}
})
return (
<View>
{mappedButtons}
</View>)
}
und auch auf diese Weise :
render() {
const mappedButtons = reversed_buttons.map((button, i) => {
var y = i%3;
if (reversed_types[i] == 1) {return (<Floor key={i} content={button}/>)}
else {
if (i == 0){
return (<View><Step key={i} title={button}/>)
}
if (y == 2){
return (</View><View><Step key={i} title={button}/>)
}
}
})
return (
<View>
{mappedButtons}
</View>)
}
aber dieses Ding will immer noch nicht funktionieren, mir Fehler 500 in der Konsole geben.
Werfen Sie einen Blick auf [diese Antwort] (https://Stackoverflow.com/a/46676943/2315280). Es ist ähnlich wie Sie es versuchen. – bennygenel
ja, das ist richtig, ich benutze%, um Iteration nur zu drei zu bekommen, die meinen Iterator nicht beeinflussen. Die Frage ist, wie man React-native dazu bringt, alle 3 Buttons im View-Tag zu schließen. Aber trotzdem danke für die Antwort! :) – Edgarsz