gpt4 book ai didi

javascript - 在 React JS 中渲染惊人的图像

转载 作者:行者123 更新时间:2023-12-01 17:44:03 25 4
gpt4 key购买 nike

例如,我有一个要以交错方式呈现的元素列表:

let items = [
{title: 'title 1', source: 'img/src/1'},
{title: 'title 2', source: 'img/src/2'},
{title: 'title 3', source: 'img/src/3'}
]

render() 后的期望输出:

title 1 [img 1]
[img 2] title 2
title 3 [img 3]

我怎样才能做到这一点?我想我想问的是,如何遍历我的列表项,并根据它们的索引返回不同的标记?

items.map(function(item, i) {
return //Need help here
})

最佳答案

查看 i 索引以确定它何时为奇数,何时为偶数。根据呈现不同的 UI React 元素

items.map(function(item, i) {
if (i % 2) {
// i is odd number
// render one type of UI element
} else {
// i is even number
// render another UI element
}
});

所以在 React 父组件中你可以这样写:

class ListOfItems extends Component {
render() {
const { items } = this.props;

return {
<div>
{items.map((item, index) =>
index % 2 ?
<UIElement1 />
:
<UIElement2 />
)}
</div>
);
}
}

或者如果你有相同的 UI 元素,但它的样式或逻辑会根据它是奇数还是偶数而改变

class ListOfItems extends Component {
render() {
const { items } = this.props;

return {
<div>
{items.map((item, index) =>
<UIElement
isOdd={!!(index % 2)}
/>
)}
</div>
);
}
}

或者如果你有相同的 UI 元素,但它的类根据元素是奇数还是偶数而改变

class ListOfItems extends Component {
render() {
const { items } = this.props;

return {
<div>
{items.map((item, index) =>
<UIElement
className={index % 2 ? className1 : className2}
/>
)}
</div>
);
}
}

关于javascript - 在 React JS 中渲染惊人的图像,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/38465169/

25 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com