热门标签 | HotTags
当前位置:  开发笔记 > 编程语言 > 正文

vue学习之交换布局以及模糊查询

效果展示交换布局vue框架是典型的MVVM前端框架,不提倡程序猿通过操作dom元素来达到效果。并且操纵dom元素不利于性能优化消耗较多内存。交换布局的核心其实就是满
效果展示

在这里插入图片描述
在这里插入图片描述
在这里插入图片描述
在这里插入图片描述

交换布局

vue框架是典型的MVVM前端框架,不提倡程序猿通过操作dom元素来达到效果。并且操纵dom元素不利于性能优化消耗较多内存。
交换布局的核心其实就是满足条件的一方展示。用到的是v-if指令,

<div id&#61;"search"><input type&#61;"text" name&#61;"" id&#61;"find" placeholder&#61;"请输入搜索内容" v-model&#61;"search_content"/><img src&#61;"../image/搜索.png"> <img src&#61;"../image/详情.png" :class&#61;"{&#39;active&#39;:layout&#61;&#61;&#39;list&#39;}" &#64;click&#61;"layout&#61;&#39;list&#39;"><img src&#61;"../image/网格化.png" :class&#61;"{&#39;active&#39;:layout&#61;&#61;&#39;grid&#39;}" &#64;click&#61;"layout&#61;&#39;grid&#39;">div> <ul><div class&#61;"flex" v-if&#61;"layout&#61;&#61;&#39;list&#39;"><li v-for&#61;"item in find">{{item.title}}<div id&#61;"img"><img :src&#61;item.img /> div>li>div>ul>

首先给两个按钮绑定对应事件&#xff0c;第一个是形式是带标题的展示&#xff0c;第二格式网格式的图片展示。&#64;click&#61;“layout&#61;‘list’” 显然这段代码的意思是点击之后data中的layout变量变为了list。所以我们应该在data中提前声明变量layout&#xff0c;并且默认值设为list。
实现交换布局核心就是当layout为list时候展示lsit格式&#xff0c;为grid展示grid格式&#xff0c;所以直接v-if&#61;“layout &#61;&#61; ‘list’” 即可
然后为img添加active样式。用到的是v-bind指令&#xff0c;他能够更改属性值&#xff0c;:class意思是要更改的属性为class&#xff0c;active则是如果满足条件就把属性class的值改成active即使用active样式。两种写法&#xff1a;

<img src&#61;"../image/详情.png" :class&#61;"{&#39;active&#39;:layout&#61;&#61;&#39;list&#39;}" >
<img src&#61;"../image/网格化.png" :class&#61;"layout&#61;&#61;&#39;grid&#39;?&#39;active&#39;:&#39;&#39;">

此时就可以做到通过点击图标来实现布局的交换。

模糊查询

作为前端 如果拿到了所有数据进行模糊查询功能的编写也是不难的。本例使用计算属性&#xff08;响应式数据&#xff09;&#xff0c;同步渲染。因为vue是典型的MVVM框架不需要控制器处理数据&#xff0c;是双向绑定的&#xff0c;通过vm&#xff08;调度者&#xff09;实现。
想要实现模糊查询用到的是数组的方法filter&#xff08;&#xff09;&#xff1b;
eg&#xff1a;

var aaa&#61;[&#39;asv&#39;,&#39;dsad&#39;,&#39;www&#39;];var ccc&#61;aaa.filter(function(item){return item.indexOf(&#39;a&#39;)!&#61;-1})console.log(ccc)//[&#39;asv&#39;,&#39;dsad&#39;]

所以我们在计算属性中也是用这样的方法

computed:{find:function(){let that &#61; this;if(this.search_content&#61;&#61;&#39;&#39;){ return this.example;} return this.example.filter(function(item){return item.title.indexOf(that.search_content)!&#61;-1// return item.title.includes(that.search_content)})}},

search_content就是用v-model进行绑定的input框里面的值。
也可以使用es6中提供的方法includes&#xff0c;如果包括输入的数据&#xff0c;则返回。

代码


  • {{item.title}}


推荐阅读
  • 本文介绍了在开发Android新闻App时,搭建本地服务器的步骤。通过使用XAMPP软件,可以一键式搭建起开发环境,包括Apache、MySQL、PHP、PERL。在本地服务器上新建数据库和表,并设置相应的属性。最后,给出了创建new表的SQL语句。这个教程适合初学者参考。 ... [详细]
  • CSS3选择器的使用方法详解,提高Web开发效率和精准度
    本文详细介绍了CSS3新增的选择器方法,包括属性选择器的使用。通过CSS3选择器,可以提高Web开发的效率和精准度,使得查找元素更加方便和快捷。同时,本文还对属性选择器的各种用法进行了详细解释,并给出了相应的代码示例。通过学习本文,读者可以更好地掌握CSS3选择器的使用方法,提升自己的Web开发能力。 ... [详细]
  • 前景:当UI一个查询条件为多项选择,或录入多个条件的时候,比如查询所有名称里面包含以下动态条件,需要模糊查询里面每一项时比如是这样一个数组条件:newstring[]{兴业银行, ... [详细]
  • 如何实现织梦DedeCms全站伪静态
    本文介绍了如何通过修改织梦DedeCms源代码来实现全站伪静态,以提高管理和SEO效果。全站伪静态可以避免重复URL的问题,同时通过使用mod_rewrite伪静态模块和.htaccess正则表达式,可以更好地适应搜索引擎的需求。文章还提到了一些相关的技术和工具,如Ubuntu、qt编程、tomcat端口、爬虫、php request根目录等。 ... [详细]
  • Nginx使用(server参数配置)
    本文介绍了Nginx的使用,重点讲解了server参数配置,包括端口号、主机名、根目录等内容。同时,还介绍了Nginx的反向代理功能。 ... [详细]
  • 本文分享了一个关于在C#中使用异步代码的问题,作者在控制台中运行时代码正常工作,但在Windows窗体中却无法正常工作。作者尝试搜索局域网上的主机,但在窗体中计数器没有减少。文章提供了相关的代码和解决思路。 ... [详细]
  • android listview OnItemClickListener失效原因
    最近在做listview时发现OnItemClickListener失效的问题,经过查找发现是因为button的原因。不仅listitem中存在button会影响OnItemClickListener事件的失效,还会导致单击后listview每个item的背景改变,使得item中的所有有关焦点的事件都失效。本文给出了一个范例来说明这种情况,并提供了解决方法。 ... [详细]
  • 推荐系统遇上深度学习(十七)详解推荐系统中的常用评测指标
    原创:石晓文小小挖掘机2018-06-18笔者是一个痴迷于挖掘数据中的价值的学习人,希望在平日的工作学习中,挖掘数据的价值, ... [详细]
  • 本文介绍了一些好用的搜索引擎的替代品,包括网盘搜索工具、百度网盘搜索引擎等。同时还介绍了一些笑话大全、GIF笑话图片、动态图等资源的搜索引擎。此外,还推荐了一些迅雷快传搜索和360云盘资源搜索的网盘搜索引擎。 ... [详细]
  • 《数据结构》学习笔记3——串匹配算法性能评估
    本文主要讨论串匹配算法的性能评估,包括模式匹配、字符种类数量、算法复杂度等内容。通过借助C++中的头文件和库,可以实现对串的匹配操作。其中蛮力算法的复杂度为O(m*n),通过随机取出长度为m的子串作为模式P,在文本T中进行匹配,统计平均复杂度。对于成功和失败的匹配分别进行测试,分析其平均复杂度。详情请参考相关学习资源。 ... [详细]
  • 本文介绍了在Vue项目中如何结合Element UI解决连续上传多张图片及图片编辑的问题。作者强调了在编码前要明确需求和所需要的结果,并详细描述了自己的代码实现过程。 ... [详细]
  • Python瓦片图下载、合并、绘图、标记的代码示例
    本文提供了Python瓦片图下载、合并、绘图、标记的代码示例,包括下载代码、多线程下载、图像处理等功能。通过参考geoserver,使用PIL、cv2、numpy、gdal、osr等库实现了瓦片图的下载、合并、绘图和标记功能。代码示例详细介绍了各个功能的实现方法,供读者参考使用。 ... [详细]
  • Html5-Canvas实现简易的抽奖转盘效果
    本文介绍了如何使用Html5和Canvas标签来实现简易的抽奖转盘效果,同时使用了jQueryRotate.js旋转插件。文章中给出了主要的html和css代码,并展示了实现的基本效果。 ... [详细]
  • 第四章高阶函数(参数传递、高阶函数、lambda表达式)(python进阶)的讲解和应用
    本文主要讲解了第四章高阶函数(参数传递、高阶函数、lambda表达式)的相关知识,包括函数参数传递机制和赋值机制、引用传递的概念和应用、默认参数的定义和使用等内容。同时介绍了高阶函数和lambda表达式的概念,并给出了一些实例代码进行演示。对于想要进一步提升python编程能力的读者来说,本文将是一个不错的学习资料。 ... [详细]
  • 网址:https:vue.docschina.orgv2guideforms.html表单input绑定基础用法可以通过使用v-model指令,在 ... [详细]
author-avatar
卢培伟
这个家伙很懒,什么也没留下!
PHP1.CN | 中国最专业的PHP中文社区 | DevBox开发工具箱 | json解析格式化 |PHP资讯 | PHP教程 | 数据库技术 | 服务器技术 | 前端开发技术 | PHP框架 | 开发工具 | 在线工具
Copyright © 1998 - 2020 PHP1.CN. All Rights Reserved | 京公网安备 11010802041100号 | 京ICP备19059560号-4 | PHP1.CN 第一PHP社区 版权所有