vue实现一个带搜索功能的列表_(Vue起步)2.模板指令:v-for / v-on / v-model

dcb7f91e9859d5e559eeea9ddb801a1a.png
①公众号:王酱酱记
②记录跟着文档学习Vue的一些关键点,持续更新。感兴趣的小白建议关注一下
③Vue当中有几个常见的指令,看看是怎么用的,强烈建议你自己在编辑器里打一遍,你就更明白Vue为什么是数据驱动型的一款框架啦!
  • 关键词:v-for v-onv-model
  • 实现需求:循环数据、绑定事件、数据的双向绑定
  • 了解:Vue.js 设计思想、Vue.js 的基础语法
  • 注意:v-on:click 用 @click代替

一、实现通过 input 框向“正在进行”的列表中增加列表项内容

  • 使用:v-for 帮助去循环多行数据
//创建一个Vue实例,加上对应的 el 和 data 数据
//在dom元素加上vue的一个指令 v-for 用于循环多列数据<!DOCTYPE html>
<html lang="en">
<head><meta charset="UTF-8"><title>TodoList</title><script src='./vue.js'></script>
</head>
<body><div id = "app"><input type="text" /><button>提交</button><ul><li v-for="item in list">{{item}}</li></ul></div> <script>var app = new Vue ({el: '#app',data: {list: ['第一课内容' , '第二课内容' , '33333']}})</script></body>
</html>
  • list需要循环数据
  • item: 指的是循环过程中循环的每一项内容

假设,在list再任意假如一个字符串,如'33333' ,那么此时浏览器页面上也会相应出现列表内容为 33333 的效果

二、实现在输入框输入内容提交后,提交功能 出现 弹出框效果

  • 分析需求:点击“提交”按钮,需要用绑定事件实现
  • 使用:v-on Vue 用于绑定事件的模板指令 (如点击事件,v-on:click="handleBtnClick",这里的 handleBtnClick 是一个函数(一种方法),对应地在 Vue 实例中也要相应地映射这种方法)
  • 注意:v-on:click 可以写成 @click
<body><div id = "app"><input type="text" /><button v-on:click="handleBtnClick">提交</button><ul><li v-for="item in list">{{item}}</li></ul></div> <script>var app = new Vue ({el: '#app',data: {list: ['第一课内容' , '第二课内容' , '33333']},methods: {handleBtnClick : function(){alert('click')}}})</script>
</body>

只要点击 dom 元素中的 button ,就会执行 handleBtnClick 这个方法。而 Vue 的实例接管了页面的 dom 元素,执行 handleBtnClick 则会自动到这个实例中对应地找到这个方法。

试一下:点击页面上的 “提交” ,会不会弹出含有 “click” 内容的弹窗

三、实现输入内容,在页面上展示输入的内容

  • 使用:v-model 用于实现数据的双向绑定。它的值等于一个数据。
<body><div id = "app"><input type="text" v-model="inputValue"/><button v-on:click="handleBtnClick">提交</button><ul><li v-for="item in list">{{item}}</li></ul></div> <script>var app = new Vue ({el: '#app',data: {list: [],inputValue: ''},methods: {handleBtnClick : function(){alert('click')}}})</script>
</body>

dom 元素里用 v-model 绑定数据。当 dom 元素中的内容发生变化时,Vue 实例中 data 数据中对应 v-model 的数据值也会相应地发生变化;反之,data 的对应数据值发生变化,页面也会发生变化

试一下:控制台测试一下 v-model 双向的数据绑定效果吧(如图)

a52b1ab5f1f0723e3e8bf09af7b984db.png
1

e86df34167734331b4234d7d1157663c.png
2

四、实现在点击“提交”后将input里的value值输出展示在页面中

  • 实现需求: “提交”输入进去的内容 结合
<body><div id = "app"><input type="text" v-model="inputValue"/><button v-on:click="handleBtnClick">提交</button><ul><li v-for="item in list">{{item}}</li></ul></div> <script>var app = new Vue ({el: '#app',data: {list: [],inputValue: ''},methods: {handleBtnClick : function(){alert(this.inputValue) //实现输入+提交的结合}}})</script>
</body>

试一下:输入框 空白时,点击 “提交”, 弹出空白内容框。输入内容时,输入框(页面)数据变化,实例 data inputValue 也跟着变化(数据的双向绑定),点击 “提交” ,弹出有内容框。

五、实现每当在输入框中输入东西,页面列表中也会增加相应的东西

  • 分析需求:先分析列表增加的方式就是在 data 中的 list 操作,每添加一个数据,就会在页面出现一个列表;然后实现输入框输入值,使用 data 中的 inputValue 来代表每次输入框输入的值;点击之后出结果
<body><div id = "app"><input type="text" v-model="inputValue"/><button v-on:click="handleBtnClick">提交</button><ul><li v-for="item in list">{{item}}</li></ul></div> <script>var app = new Vue ({el: '#app',data: {list: [],inputValue: ''},methods: {handleBtnClick : function(){this.list.push(this.inputValue) //实现列表+输入+点击			   }}})</script>
</body>

六、实现每次输入完都清空输入框内容

  • 分析需求:让输入框的值 inputValue 为变成空字符串,数据的双向绑定起作用。数据变了,页面也就跟着变了
<body><div id = "app"><input type="text" v-model="inputValue"/><button v-on:click="handleBtnClick">提交</button><ul><li v-for="item in list">{{item}}</li></ul></div> <script>var app = new Vue ({el: '#app',data: {list: [],inputValue: ''},methods: {handleBtnClick : function(){this.list.push(this.inputValue), //实现列表+输入+点击this.inputValue = '' //实现输入后框内变空}}})</script>
</body>

所以知道了原生JS操作 & Vue.js操作的区别了吗?

  • 原生JS:都是在操作dom
  • Vue.js: 操作的都是数据

本文来自互联网用户投稿,该文观点仅代表作者本人,不代表本站立场。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如若转载,请注明出处:http://www.mzph.cn/news/502801.shtml

如若内容造成侵权/违法违规/事实不符,请联系多彩编程网进行投诉反馈email:809451989@qq.com,一经查实,立即删除!

相关文章

python numpy库安装winerror5_详解idea从git上拉取maven项目详细步骤

刚从Eclipse转Intellij,对于它的各种操作也是一脸懵逼&#xff0c;但觉得使用起来还不错&#xff0c;今天就说一下我用Idea导入git中的Maven项目的详细步骤&#xff1a; 1. 首先打开Intellji Idea,选择check out from Version Control,选择Git(图片上选到gitHub了&#xff0c;抱…

java jcsh执行linux命令,java jcsh执行linux命令

java jcsh执行linux命令[2021-02-03 01:26:29] 简介:php去除nbsp的方法&#xff1a;首先创建一个PHP代码示例文件&#xff1b;然后通过“preg_replace("/(\s|\&nbsp\;| |\xc2\xa0)/", " ", strip_tags($val));”方法去除所有nbsp即可。推荐&#xff…

sql md5函数_【学习笔记】常见漏洞:SQL注入的利用与防御

第 21 课 SQL注入的利用与防御课程入口(付费)个人背景李&#xff0c;本科&#xff0c;电子信息工程专业&#xff0c;毕业一年半&#xff0c;有JavaScript的&#xff0c;PHP&#xff0c;Python的语言基础&#xff0c;目前自学网络安全中。SQL注入的利用与防御01 SQL盲注1.1 S…

docker -v 覆盖了容器中的文件_浅谈docker中宿主机和容器之间互相copy文件的两种方式,欢迎补充...

在dokcer的日常使用过程中&#xff0c;我们可能会遇到将宿主机内文件/目录copy到容器内&#xff0c;或者将容器的文件/目录copy到宿主机中&#xff0c;下面我们就来简单的谈一下关于这种情况的两种操作。1、Docker cp命令&#xff1a;用于容器与主机之间的数据copy语法&#xf…

线性代数第九版pdf英文_斯坦福CS229机器学习课程的数学基础(线性代数)翻译完成...

文章转载自公众号 机器学习初学者 &#xff0c; 作者 机器学习初学者Stanford cs229 manchine learning课程&#xff0c;相比于Coursera中的机器学习有更多的数学要求和公式的推导&#xff0c;课程全英文&#xff0c;基础材料部分还没有翻译。这个基础材料主要分为线性代数和概…

c 多文件全局变量_C语言开发单片机为什么大多数都采用全局变量的形式?

点击上方蓝字关注我哦&#xff5e;01前言全局变量简直就是嵌入式系统的戈兰高地。冲突最激烈的双方是1. 做控制的工程师 2. 做非嵌入式的软件工程师。02做控制的工程师特点他们普遍的理解就是“变量都写成全局该有多方便”。我之前面试过一个非常有名的做控制实验室里出来的PhD…

医学图像处理_专刊征稿|医学图像处理中的认知计算

认知科学是20世纪世界科学标志性的新兴研究门类&#xff0c;它作为探究人脑或心智工作机制的前沿性尖端学科&#xff0c;已经引起了全世界科学家们的广泛关注。认知计算代表一种全新的计算模式&#xff0c;它包含信息分析&#xff0c;自然语言处理和机器学习领域的大量技术创新…

python 如何判断一个函数执行完成_Python 函数为什么会默认返回 None?

&#x1f446; “Python猫” &#xff0c;一个值得加星标的公众号Python 有一项默认的做法&#xff0c;很多编程语言都没有——它的所有函数都会有一个返回值&#xff0c;不管你有没有写 return 语句。 本文出自“Python为什么”系列&#xff0c;在正式开始之前&#xff0c;我们…

不在 sudoers 文件中。此事将被报告_快餐包装中检出致癌物质?麦当劳、汉堡王回应!...

薯条汉堡、雪碧可乐已然成为大家的用餐首选之一一周吃了两次以上的人相信也不在少数可最近一则“麦当劳、汉堡王等快餐包装中检出致癌物质”的消息却让许多人吓出了一身冷汗而且迅速登上热搜榜…近日&#xff0c;环保组织的一份报告称&#xff0c;美国当地麦当劳McDonald’s、汉…

lichee linux nfs,SPI Flash 系统编译

在一些低成本应用场景&#xff0c;需要在SPI flash上启动系统&#xff0c;这需要对Uboot和系统镜像做些适配。本文介绍SPI Flash镜像的制作过程。这里 使用 MX25L25645G, 32M SPI flash 作为启动介质&#xff0c;规划分区如下&#xff1a;分区序号分区大小分区作用地址空间及分…

linux 百度地图离线sdk,Android开放百度地图集成

1、创建应用 获取AK (我理解为Application key)通过百度账号登录百度地图开放平台&#xff0c;进入API控制台 http://lbsyun.baidu.com/apiconsole/key 创建自己的应用&#xff0c;输入应用名称 &#xff0c;选择Android SDK 应用类型&#xff0c;选择需要的服务(默认全选) 输入…

activiti7流程设计器_基于容器和微服务应用的架构:容器设计原则

微服务提供了巨大的好处&#xff0c;但也带来了巨大的新挑战。在创建基于微服务的应用程序时&#xff0c;微服务体系结构模式是最基本的支柱。在本指南的前面&#xff0c;您学习了关于容器和Docker的基本概念。这是开始使用容器所需的最低信息。尽管&#xff0c;即使容器是微服…

女生做产品经理好吗_女生天生就是产品经理,不服来战!

关注&#x1f51d;蓝字&#xff0c;获取求职干货信息大家好&#xff0c;姗姗来迟~这个梗会不会被扣工资前两天&#xff0c;小米的资深产品经理Alina老师征集用户需求&#xff1a;关于产品经理的直播课&#xff0c;大家想听什么呀&#xff1f;姗姗一直很好奇&#xff1a;一个对逻…

tcp报文格式_34.TCP取样器

阅读文本大概需要3分钟。1、TCP取样器的作用TCP取样器作用就是通过TCP/IP协议来连接服务器&#xff0c;然后发送数据和接收数据。2、TCP取样器详解TCPClient classname&#xff1a;TCP报文格式类名&#xff0c;默认前缀org.apache.jmeter.protocol.tcp.sampler.① TCPClientImp…

pythonwx功能_python中wx模块的具体使用方法

wx包中的方法都是以大写字母开头的&#xff0c;而这和Python的习惯是相反的。 本节介绍如何创建python程序的图形用户界面&#xff08;GUI&#xff09;&#xff0c;也就是那些带有按钮和文本框的窗口。这里介绍wxPython &#xff1a; 根据自己的操作系统下载相应版本。 安装&am…

uml 类图_UML-类图

概念Class diagram is UML structure diagram which shows structure of the designed system at the level of classes and interfaces, shows their features, constraints and relationships - associations, generalizations, dependencies, etc.类图是用于描述类、接口这一…

python读取文件中的内容_python 读取文件夹中的文件内容

看thinking in java的时候发现有个题的答案不确定结果&#xff0c; 于是下载答案看下&#xff0c;结果是这个样子的,这样要怎么才能找到相对应的答案&#xff1f;于是我就着手写了一个快速遍历的脚本&#xff08;我这里只是单纯的找了出来&#xff0c; 没有把找到的文件单独拿出…

binlog数据库不写入binlog_京东智联云MySQL数据库如何保障数据的可靠性?

MySQL作为当前最流行的关系型数据库&#xff0c;在各个行业的系统中扮演着最重要的角色。随着大家对数据价值认可的逐步加深&#xff0c;数据的可靠性是最常被问到的一个问题。MySQL是如何保证数据可靠性的&#xff1f;京东智联云RDS-MySQL又做了哪些优化和新特性来保证用户数据…

js和python哪个好_Python与Node.JS:哪一个比较适合您的项目?

在进行新项目时选择正确的编程语言可能是程序员经常做出的比较艰巨的决定之一。这个挑战背后的原因是&#xff0c;每个新项目都会遇到一个独特的问题&#xff0c;并且在编程世界中&#xff0c;没有任何行业的大师。 不同的编程语言都有其长处和短处&#xff0c;这使其适用于某些…

equation在c语言中是什么意思,MathType出现此对象创建于Equation中的问题怎么办

使用MathType出错的窗口&#xff1a;MathType程序停止工作提醒窗口&#xff1a;解决方法如下&#xff1a;1.打开Word文件&#xff0c;在Word菜单中选择“工具”——“模板和加载项”&#xff0c;将会跳出一个模板和加载项的对话框。在Word菜单中选择“工具”——“模板和加载项…