点击按钮时,对返回的JSON数据进行VueJS过滤
P粉125450549
P粉125450549 2024-03-27 12:45:15
[Vue.js讨论组]

我想通过单击按钮来过滤获取的 json 数据,以便仅显示与单击的按钮匹配的数据(在我的案例书名称中),并隐藏直到另一个按钮才匹配的其他数据(书籍)单击匹配的其他名称。

我已将数据填充为组件上的列表,如下所示:

  • {{book.name}}
  • 它们正确呈现如下:

    1. 炼金术士
    2. 哈利·波特
    3. 等等...

    现在,我有按钮(硬编码),我需要它们来过滤结果并显示仅单击的那些按钮。

    
    

    这是我的 json 数据:

    [{
     "name": "The Alchemist",
     "author": "Paulo Coelho",
     "year":  "1988",            
     },
    {
     "name": "Harry Potter",
     "author": "J. K. Rowling",
     "year":  "1997",            
     }]

    任何解决该问题的想法将不胜感激

    P粉125450549
    P粉125450549

    全部回复(1)
    P粉619896145

    工作演示:

    new Vue({
      el: '#app',
      data: {
        books: [{
          "name": "The Alchemist",
          "author": "Paulo Coelho",
          "year":  "1988",            
        }, {
          "name": "Harry Potter",
          "author": "J. K. Rowling",
          "year":  "1997",            
        }],
        filteredBooks: []
      },
      mounted() {
        this.filteredBooks = this.books;
      },
      methods: {
        filterData(e) {
          this.filteredBooks = this.books.filter((obj) => obj.name === e.target.textContent);
        }
      }
    });
  • {{ book.name }}
    热门教程
    更多>
    最新下载
    更多>
    网站特效
    网站源码
    网站素材
    前端模板
    关于我们 免责申明 举报中心 意见反馈 讲师合作 广告合作 最新更新 English
    php中文网:公益在线php培训,帮助PHP学习者快速成长!
    关注服务号 技术交流群
    PHP中文网订阅号
    每天精选资源文章推送
    PHP中文网APP
    随时随地碎片化学习

    Copyright 2014-2025 https://www.php.cn/ All Rights Reserved | php.cn | 湘ICP备2023035733号