我正在try 更新Make,当点击按钮时,功能sortCategories
被执行,CategoryRow
个组件的列表被排序,但没有任何变化,控制台上没有错误
import React, { useEffect, useState} from 'react';
import './category.css';
import Header from "../Header";
import CategoryRow from "./CategoryRow";
// Clean empty categories
const filtered = window.CATEGORIES.filter(function(value, index, arr) {
return value.labResults.length > 0;
});
export default function Category() {
const [categories, setCategories] = useState(filtered)
const [loading, setLoading] = useState(true)
useEffect(() => {
setLoading(false)
}, []);
const sortCategories = () => {
// Order by issues
categories.sort((a,b) => {
return b.issues - a.issues;
});
setCategories(categories);
}
return (
<>
<Header></Header>
<div className="order-button-row">
<button className="btn btn-primary" onClick={ sortCategories }>Order by issues</button>
</div>
<div className="card shadow py-2 mb-2">
<div className="card-body">
{loading ? (
<div className={'text-center'}>
<span className="fa fa-spin fa-spinner fa-4x"></span>
</div>
) : (
<div className={'row'}>
{categories.map(categoryInformation =>
<CategoryRow key={categoryInformation.category.id}
category={categoryInformation.category}
issues={categoryInformation.issues}></CategoryRow>
)}
</div>
)}
</div>
</div>
</>
)
}