我有一个在 React Native 的父组件中渲染的子组件列表,它们看起来像这样。在 InnerLoop 函数内部,i 的增量不会超过零。子列表的长度是通过将值从正在工作的父级推送到 globalArrayTwo 来生成的。全局数组 one 属性也被正确传递并且对子级可见
function parentElement(props) {
const [globalArrayOne,setGlobalArrayOne] = useState([]);
useEffect(()=>{
fetch('someAPI')
.(res=>res.json())
.then(res => setGlobalArrayOne(res))
},[props])
let globalArrayTwo = []
return (
<View>
{
globalArrayTwo.push(1),
globalArrayTwo.push(2),
globalArrayTwo.push(3),
globalArrayTwo.push(4)
}
{
globalArrayTwo.map((i) => {
return (
<ChildElement
propArray={globalArrayOne}
/>
)
})
}
</View>
)
}
function childElement(props) {
function InnerLoop() {
for (let i = 0; i < props.propArray; i++) {
if (condistionIsMet) {
return "TEXTSTRINGONE"
} else {
return "TEXTSTRINGTWO"
}
}
}
return (
<View>
<Text>
{InnerLoop()}
</Text>
</View>
)
}
最佳答案
我认为在你的 InnerLoop
功能应该是i<props.propsArray.length
而不是i<props.propsArray
关于reactjs - for 循环不在 react native 子项内递增,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/71257659/