首页 > 解决方案 > 使用 React 过滤

问题描述

我正在尝试按类别过滤。使用我当前的代码,我可以从数据库中检索所有内容,但只想按特定类别显示。我试图在地图之前添加过滤器方法,但这并没有返回任何东西。我可以告诉您,根据单击的链接,该 url 将具有“/specificCategory”。我已经搜索得很彻底,但似乎无法弄清楚。任何帮助将不胜感激。


    function Endurance() {
      const [workout, setWorkout] = useState({});
    
      function returnCategory() {
        API.returnCategory()
          .then((response) => {
            console.log("return: ", response);
            setWorkout(response.data);
            console.log("Workouts retrieved from DB!");
          })
          .catch((err) => console.log(err));
      }
    
      useEffect(() => {
        returnCategory();
      }, []);
    
      return (
        <Container>
          {workout.length > 0 ? (
            <div>
              {workout.map((workout, index) => {
                return ( rendering a card)```

API.js
 ``` returnCategory: function (category) {
    return axios.get("./api/workouts/", category);
  }```

controller

    ```findByCategory: function (req, res) {
        db.Workout.findAll({ 
          where: {
            category: req.params.category,}
           })
          .sort({ distance: -1 })
          .then((dbModel) => res.json(dbModel))
          .catch((err) => res.status(422).json(err));
      },```

routes

    ```router.route("/:category").get(workoutsController.findByCategory);```

标签: reactjsfilter

解决方案


推荐阅读