我具有此功能,可根据资源是否存在来获取资源。一切都会显示,但是我需要将每个资源推送到resultArray中。我正在使用forEach循环,但无法正常工作,我想念什么?
renderResource = (resource = {}, i) => {
let { resourceFile = "", resourceDescription= "" } = resource;
if (!resourceFile) { return null }
let resultArray = [];
resource.forEach((resource, index) => {
resultArray.push(resource);
});
答案 0 :(得分:0)
资源是一个对象。用于in方法:
for (let key in resource) {
console.log(resource[key]);
}
答案 1 :(得分:0)
首先,您需要遍历resource
的值。由于它是一个对象,因此可以使用Object.values(resource)
来获得它们。
第二,您应该使用.map()
而不是.forEach()
,因为.forEach()
实际上不会返回任何内容。
import React, { useState } from 'react';
import { render } from 'react-dom';
const App = () => {
const [stuff, setStuff] = useState({ hello: 'hello', world: 'world'})
return (
Object.values(stuff).map(v => <div>{v}</div>)
)
}
render(<App />, document.getElementById('root'));
实时示例here。