我有一些来自道具的数组,如下所示this.props.fruits= [ { source: "Apple", code: 101, }, { source: "banana", code: 105, }, { source: "Mango", code: 107, },];在我的状态下,我必须仅保存代码以将其发送到后端我的状态如下所示this.state ={ myfruits:[101,105]}我必须在渲染 DOM 元素的 DOM 元素示例中渲染 myfruits 名称My Fruits : Apple , banana
2 回答
Cats萌萌
TA贡献1805条经验 获得超9个赞
您可以结合使用filter、map和join来使其正常工作。
示例不是 React,但向您展示了如何实现。
const fruits = [
{
source: "Apple",
code: 101,
},
{
source: "banana",
code: 105,
},
{ source: "Mango",
code: 107,
},
];
const state = [101, 105];
const getFruitNames = () => fruits
.filter(({ code }) => state.includes(code)) // Get all fruit objects where the code is also in state
.map(({ source }) => source) // Only return the source (name)
.join(", "); // Turn into a comma seperated string
console.log(`My Fruits: ${getFruitNames()}`);
眼眸繁星
TA贡献1873条经验 获得超9个赞
您可以结合使用 filter 和 map 方法,
this.props.fruits.filter((fruit) => this.state.myfruits.includes(fruit.code)) .map((fruit) => fruit.source)
添加回答
举报
0/150
提交
取消