【发布时间】:2021-08-02 01:31:05
【问题描述】:
我有一个 useState 挂钩名称故事。
const [stories, setStories] = useState([
{
name: "1st Story",
sid: 1,
apartmentDetails: [],
},{
name: "2nd Story",
sid: 2,
apartmentDetails: [],
}
]);
现在我想在 1st Story 中添加 apartmentDetails。为了实现此功能,我正在执行以下操作。
let story = stories.find((story) => story.sid == storyID);
const storyWithDetails = {
...story,
appartmentDetails: [
...story.appartmentDetails,
{
apartment_name: apratmentName,
apartment_num: apratmentNum,
apartment_type: apartmentType,
areaDetails: [],
},
],
但它通过将 1st Story 放在数组的最后来重新排列故事。 我使用 useEffect 挂钩对其进行排序
useEffect(() => {
setStories(stories.sort((a, b) => parseInt(a.sid) - parseInt(b.sid)));
console.log(stories);
}, [stories]);
日志将排序后的故事返回给我,但在 HTML/JSX 中它不起作用。
【问题讨论】:
-
你的意思是它不起作用,你在页面中的输出是什么
-
是的。没有在页面中获得排序的故事
标签: arrays reactjs sorting use-effect use-state