当前位置: 首页 > news >正文

【Vue3】2-12 : 【案例】搜索关键词加筛选条件的综合

本书目录:点击进入

一、【案例】搜索关键词加筛选条件的综合

1.1、逻辑

1.2、效果

1.3、json数据 - 02-data.json

1.4、代码


一、【案例】搜索关键词加筛选条件的综合

1.1、逻辑

  • 计算属性 - 绑定list,并过滤

  • input  双向绑定 - 当input改变时,计算属性过滤name

  • button组 双向绑定 - 当input改变时,计算属性过滤性别

1.2、效果

1.3、json数据 - 02-data.json

[{"id": 1,"name": "小明","gender": "女","age": 20},{"id": 2,"name": "小强","gender": "男","age": 18},{"id": 3,"name": "大白","gender": "女","age": 25},{"id": 4,"name": "大红","gender": "男","age": 22}
]

1.4、代码

<body><div id="app"><input type="text" v-model="message"><button :class="activeGender('全部')" @click="handleGender('全部')">全部</button><button :class="activeGender('男')" @click="handleGender('男')">男</button><button :class="activeGender('女')" @click="handleGender('女')">女</button><ul><li v-for="item in filterList" :key="item.id">{{ item.name }}, {{ item.gender }}, {{ item.age }}</li></ul></div><script>let vm = Vue.createApp({data() {return {list: [],message: '',gender: '全部'}},created(){fetch('./02-data.json').then((res)=> res.json()).then((res)=>{this.list = res;})},computed: {filterList(){return this.list.filter((v)=> v.name.includes(this.message)).filter((v)=> v.gender === this.gender || '全部' === this.gender);}},methods: {activeGender(gender){return { 'active-gender': this.gender === gender };},handleGender(gender){this.gender = gender;}}}).mount('#app');</script>
</body>

http://www.lryc.cn/news/280534.html

相关文章:

  • unity小程序websocket:nginx配置https (wss)转http (ws)及其他问题解决
  • MySql数据库对接Orcal数据库,需要考虑的前提问题
  • K8S的存储卷---数据卷
  • 【量化交易故事】小明开启了量化创业之旅-01
  • ffmpeg写YUV420文件碰到阶梯型横线或者条纹状画面的原因和解决办法
  • 案例:新闻数据加载
  • 数学的雨伞下:理解世界的乐趣
  • 补充 vue3用户管理权限(路由控制)
  • C++ 深度优先搜索DFS || 模版题:排列数字
  • 计算机找不到msvcp120.dll如何解决?总结五个可靠的教程
  • 法线变换矩阵的推导
  • React.Children.map 和 js 的 map 有什么区别?
  • 13.Kubernetes部署Go应用完整流程:从Dockerfile到Ingress发布完整流程
  • 叉车车载终端定制_基于MT6762安卓核心板的车载终端设备方案
  • 【CSS】保持元素宽高比
  • 使用 Docker 和 Diffusers 快速上手 Stable Video Diffusion 图生视频大模型
  • C++ namespace高级用法
  • 如何允许远程访问 MySQL
  • PostgreSQL认证考试PGCA、PGCE、PGCM
  • Matlab深度学习进行波形分割(二)
  • Markdown高级用法——mermaid
  • cf919Div2C题题目总结
  • Pandas实战100例 | 案例 4: 数据选择和索引 - 选择特定的列和行
  • Netty-Netty实现自己的通信框架
  • 【算法刷题】总结规律 算法题目第2讲 [234] 回文链表,因为深浅拷贝引出的bug
  • RabbitMQ如何保证消息不丢失?
  • Random的使用
  • 通过反射修改MultipartFile类文件名
  • Macos下修改Python版本
  • 多种采购方式下,数智化招标采购系统建设解决方案