(vue基础试炼_03)使用vue.js实现TodoList

接上一篇:(vue基础试炼_02)使用vue.js实现隔2秒显示不同内容https://gblfy.blog.csdn.net/article/details/103841818

在这里插入图片描述

指令作用
v-for循环数据
v-on绑定事件
v-model数据的双向绑定

文章目录

  • 一、需求说明
    • ① 案例文档
    • ② 基础代码
    • ③ 基础效果图
  • 二、v-for指令学习
    • ① 使用`v-for`指令 循环显示列表内容
    • ② 使用`v-for`指令 基础效果图
    • ③ `v-for` 解说
  • 三、v-on指令学习
  • 四、v-model指令学习
    • ① v-model作用
    • ② v-model预测
    • ③ 页面验证v-model
    • ④ 获取input的内容
    • ⑤ 如何从methods中获取data中的inputValue
  • 五、获取内容添加内容
    • ①思考
    • ② 代码说明
    • ③ 效果图
    • ④场景分析
    • ⑤ 清空输入框内容
    • ⑥ 浏览器验证
  • 六、TodoList总结

一、需求说明

① 案例文档

1. 在页面上有一个输入框和提交按钮
2. 当在输入框中输入内容,点击提交按钮时,内容会显示在下面的列表中
3. 当点击提交按钮时,输入框中的内容要清空

② 基础代码

<!DOCTYPE html>
<html lang="en">
<head><meta charset="UTF-8"><title>使用vue.js 实现TodoList</title>
</head>
<body>
<div id="app"><input type="text"><button>提交</button><ul><li>第一课的内容</li><li>第二课的内容</li></ul>
</div>
</body>
</html>

③ 基础效果图

在这里插入图片描述

二、v-for指令学习

指令作用
v-for数据循环

① 使用v-for指令 循环显示列表内容

<!DOCTYPE html>
<html lang="en">
<head><meta charset="UTF-8"><title>使用vue.js 快速入门hello world</title><!--引入vue.js库--><script src="vue.js"></script>
</head><body>
<!--vue接管的div-->
<div id="app"><input type="text"><button>提交</button><ul><li v-for="item in list">{{item}}</li></ul>
</div><script>/*创建了一个vue实例*/var app = new Vue({el: '#app',data: {list: ['第一课的内容', '第二课的内容']}});
</script>
</body>
</html>

② 使用v-for指令 基础效果图

在这里插入图片描述

v-for 解说

借助v-for指令循环list数据,利用item来循环,循环的每一项都放到一个item里面,然后,利用插值表达式,将item渲染出来

标签指令说明
v-for循环数据
list循环的list
item循环的每一项都是一个item,简言之,循环的每一项内容都放到item中
{{item}}利用插值表达式获取每一个item的内容,在页面渲染显示

三、v-on指令学习

指令作用
v-on事件绑定

当在输入框中输入内容,点击提交按钮时,内容会显示在下面的列表中
思路分析

1. 刚进入页面应该是没有数据的
2. 在点击提交时,要先该发生点什么,需要绑定一个事件,在实践中书写逻辑
3. 在vue中绑定事件用v-on v-on:click="事件名称"
4. 定义的事件方法函数要定义在Vue实例的methods中的键值对里面

那当点击提交时,被绑定的handleBtnClick事件方法 去哪找呢?
这个div属于vue接管的区域,因此,当触发handleBtnClic事件时,vue就会到vue实例中的methods中去找handleBtnClick这个方法,找到之后就会执行。
在这里插入图片描述

四、v-model指令学习

① v-model作用

指令作用
v-model双向绑定

② v-model预测

v-model指的是数据的双向绑定,也就是当input框中的内容发生变化的时候,vue实例中的data里面的inputValue也会发生变化;同样当vue实例中的data里面的inputValue这个变量发生变化时,页面也会跟着发生变化。

③ 页面验证v-model

在页面中开启F12找到控制台Console,在控制台中输出inputValue看看默认是什么?
可以借助全局的app变量来实现
在这里插入图片描述
很明显默认是空字符串
当在输入框中输入内容,再到控制台,在此执行上一次命令,看效果
在这里插入图片描述
很明显,现在的inputValue得值和输入框中一样。可以概括为,当输入框中的值发生变化时,vue实例中的data里面的inputValue的值也会发生变化;那咱们反过来试一下,修改vue实例中的data里面的inputValue的值的数据,验证页面输入框中的值是否跟着变化?
在这里插入图片描述
经验证,也会发上变化。

④ 获取input的内容

当点击提交时,怎样获取到input输入框中的内容呢?
使用v-model模板指令获取input输入框中内容,但是,需要双向绑定才可以。
把input中的inputValue值和data中的inputValue值做双向绑定。
在这里插入图片描述

⑤ 如何从methods中获取data中的inputValue

既然input中的inputValue值和data中的inputValue值做双向绑定。那么data中的inputValue的值其实就是input框中的inputValue的值,那在methods的handleBtnClick方法中,如何获取data数据配置项中的inputValue的值呢 ?
通过this.inputValue即可,当使用this.inputValue时,vue会自动的到数据配置项data中找inputValue
在这里插入图片描述
测试一下
一开始input矿中的值默认是空的,点击提交,弹框空的
在这里插入图片描述
当我们在输入框中,写内容时,再次测试
在这里插入图片描述
测试和预期一样

五、获取内容添加内容

①思考

ul里面有多少个li,是由data(数据配置项)中的list决定的。我们每一次提交,只需要将每次提交的数据放到list的数组中就可以了,当数据发生变化时,是不是页面也会跟这变呢?

② 代码说明

说明
this.list相当于data中的list 数组
this.list.push意味着王list数组中添加内容
this.inputValuedata中的inputValue 的值

③ 效果图

在这里插入图片描述

④场景分析

每一次提交的时候,我们可以获取到每一次inout中的那内容,然后把获取的内容添加到list的数组中,当数据发生变化,页面就会跟着发生变化了。

⑤ 清空输入框内容

在输入框中输入内容,点击提交,提交到data里面的list数组中,但是,发现输入框中我们输入的内容依然存在,那又该如何清空呢?
我们知道this.inputValue = input中的inputValue,我们是不是只需要改变data数据配置项中的inputValue 的值,就可以修改input框中的inputValue 的值,因为当数据法身变化是,页面也会法身变化,对吧!既然这样,那我们当点击提交按钮,提交完成后,把this.inputValue的值设置为空,不就可以了。
在这里插入图片描述

⑥ 浏览器验证

依次输入123,点击提交
在这里插入图片描述
从上图我们可以知道和我们预测的一致。

六、TodoList总结

整合TodoList编码中,没有出现对dom的操作语句,取而代之,我们都在操作数据,列表中的内容我们放在list的数组中,input框中的内容我们放到inputValue中,当我们做一些操作的时候,触发点击事件之后,并不是改变dom,而是去改变数据;数据变了,页面自动的也会发生改变,这种形式,就是我们在写vue编码时天天都要用到的模式MVVM设计模式。

下一篇:(vue基础试炼_04)使用组件改造TodoListhttps://gblfy.blog.csdn.net/article/details/103844256

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

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

相关文章

Python API快餐教程(1) - 字符串查找API

摘要&#xff1a; 字符串查找API 字符串处理相关API 字符串是7种序列类型中的一种。除了序列的操作函数&#xff0c;比如len()来求字符串长度之外&#xff0c;Python还为字符串提供丰富到可以写个编辑器的API. 查找类API 首先&#xff0c;下面的查找API都是为了查找位置&#x…

因吵架总被骂,阿里程序猿一气之下发明“情侣吵架神器”

摘要&#xff1a; 最近&#xff0c;阿里有个叫虎跑的程序猿&#xff0c;发明了一个“吵架神器”。 到底是个什么黑科技&#xff1f; 最近&#xff0c;阿里有个叫虎跑的程序猿&#xff0c;发明了一个“吵架神器”。到底是个什么黑科技&#xff1f;和很多情侣一样&#xff0c;虎跑…

java中volatile关键字的含义_java中volatile关键字的含义

转自&#xff1a;http://www.cnblogs.com/aigongsi/archive/2012/04/01/2429166.html在java线程并发处理中&#xff0c;有一个关键字volatile的使用目前存在很大的混淆&#xff0c;以为使用这个关键字&#xff0c;在进行多线程并发处理的时候就可以万事大吉。Java语言是支持多线…

(vue基础试炼_04)使用组件改造TodoList

接上一篇&#xff1a;&#xff08;vue基础试炼_03&#xff09;使用vue.js实现TodoListhttps://gblfy.blog.csdn.net/article/details/103842233 指令说明v-bind传入绑定值文章目录一、前端页面组件化二、全局组件学习三、局部组件学习一、前端页面组件化 页面组件化&#xff1a…

我们到底该如何看待6G?

戳蓝字“CSDN云计算”关注我们哦&#xff01;近日&#xff0c;加拿大媒体报道&#xff0c;华为已确认在加拿大渥太华开启6G网络研究&#xff0c;已与加拿大多所大学的研究者展开洽谈。华为表示&#xff0c;自家的渥太华研发实验室将引领华为全球6G发展。图片来源网络消息传出之…

两年AI研究经验(教训)总结,进来看看吧!

摘要&#xff1a; 本文以过来人的身份将自身2年的研究经验做了一下分享&#xff0c;希望本文对于即将开始从事人工智能研究的朋友有所帮助。人工智能研究这个领域是有一定门槛的。对于初学者来说&#xff0c;一般通常的做法是直接购买一些热门的书籍&#xff0c;比如“西瓜书”…

C语言:字符串字面量及其保存位置

相关阅读 C语言https://blog.csdn.net/weixin_45791458/category_12423166.html?spm1001.2014.3001.5482 虽然C语言中不存在字符串类型&#xff0c;但依然可以通过数组或指针的方式保存字符串&#xff0c;但字符串字面量却没有想象的这么简单&#xff0c;本文就将对此进行讨论…

system.argumentnullexception值不能为null_MySQL NULL 值如何处理?

我们已经知道 MySQL 使用 SQL SELECT 命令及 WHERE 子句来读取数据表中的数据,但是当提供的查询条件字段为 NULL 时&#xff0c;该命令可能就无法正常工作。为了处理这种情况&#xff0c;MySQL提供了三大运算符:IS NULL: 当列的值是 NULL,此运算符返回 true。IS NOT NULL: 当列…

神经网络的优缺点

摘要&#xff1a; 深度学习目前受到了追捧。人们想将神经网络应用到各个地方&#xff0c;但是它们真的适合每个地方吗&#xff1f;在本篇文章中&#xff0c;将对于这个问题以及深度学习现在如此受追捧的原因进行讨论。通过这篇文章&#xff0c;您将了解神经网络的主要缺点&…

(vue基础试炼_05)简单组件之间的传值

接上一篇&#xff1a;&#xff08;vue基础试炼_04&#xff09;使用组件改造TodoListhttps://gblfy.blog.csdn.net/article/details/103844256 文章目录一、上篇回顾① 代码欣赏② 代码分析二、子组件如何向父组件传值呢&#xff1f;① 需求案例文档② 需求案例效果图③ 思考与思…

漫画:程序员战力图鉴

戳蓝字“CSDN云计算”关注我们哦&#xff01;看漫画了解程序员战斗力 are u ready&#xff1f;编程架构能力撕比嘴炮能力划水摸鱼能力花式甩锅能力画饼忽悠能力PPT吹比能力哈哈哈哈哈哈程序员哥哥上面说的是你吗 福利扫描添加小编微信&#xff0c;备注“姓名公司职位”&#xf…

Python数据挖掘与机器学习,快速掌握聚类算法和关联分析

摘要&#xff1a;前文数据挖掘与机器学习技术入门实战与大家分享了分类算法&#xff0c;在本文中将为大家介绍聚类算法和关联分析问题。分类算法与聚类到底有何区别&#xff1f;聚类方法应在怎样的场景下使用&#xff1f;如何使用关联分析算法解决个性化推荐问题&#xff1f;本…

评分9.7!这本Python书彻底玩大了?程序员:真香!

「超级星推官/每周分享」是一个围绕程序员生活、学习相关的推荐栏目。CSDN出品&#xff0c;每周发布&#xff0c;暂定5期。关键词&#xff1a;靠谱&#xff01;优质&#xff01;本期内容&#xff0c;我们将抽1人送出由我司程序员奉为“超级神作”的《疯狂Python讲义》1本&#…

vs 如何将源文件转换成可执行文件_如何将手机便签转换成word文本文档

如何将手机便签转换成word文本文档&#xff1f;实际上&#xff0c;很多手机自带的便签&#xff0c;虽然可以将单条便签内容&#xff0c;以文字或者图片的形式分享到xxx云文档&#xff0c;但却很少有支持直接转换成Word文档的。一般情况下&#xff0c;他们需要将手机便签里的内容…

端上智能——深度学习模型压缩与加速

摘要&#xff1a;随着深度学习网络规模的增大&#xff0c;计算复杂度随之增高&#xff0c;严重限制了其在手机等智能设备上的应用。如何使用深度学习来对模型进行压缩和加速&#xff0c;并且保持几乎一样的精度&#xff1f;本文将为大家详细介绍两种模型压缩算法&#xff0c;并…

jvm调优 java_opt_Java-100天知识进阶-JVM调优工具-JDK自带工具-知识铺《八》

原标题&#xff1a;Java-100天知识进阶-JVM调优工具-JDK自带工具-知识铺《八》JVM 监控分析工具一、JDK 自带工具1. jconsoleJDK/bin 目录下&#xff0c; jconsole.exe 双击打开&#xff0c; 自动搜索本机运行的虚拟机进程。选择其中一个进程即可&#xff0c;开始进行JVM监控1.…

这帮吃货程序猿,给阿里食堂来了一波骚操作

我叫宋爽&#xff0c;在别人眼里&#xff0c;我是一个程序猿。 别的程序猿&#xff0c;喜欢摁键盘&#xff0c;我嘛&#xff0c;就喜欢吃。 有一次&#xff0c;去医院体检&#xff0c;拿到CT片的我&#xff0c;看着自己的脊椎骨&#xff0c;脑子中一直在想&#xff1a;啊&#…

linux 查看shell脚本执行了多长时间

步骤说明命令①写一个1.sh脚本vim1.sh&#xff0c;把脚本内容复制进去②赋予1.sh可执行权限chmod u_x 1.sh③把要执行的命令复制到第4行&#xff0c;保存退出esc :wq④执行脚本./1sh⑤查看执行脚本&#xff0c;共消耗多长时间基础脚本模板 #!/bin/bash starttimedate %Y-%m-%d…

任正非表示华为可以向美国企业转让5G技术;谷歌同意支付5亿欧元买断与法国纠纷;京东公布iPhone11系列预售战报……...

关注并标星星CSDN云计算极客头条&#xff1a;速递、最新、绝对有料。这里有企业新动、这里有业界要闻&#xff0c;打起十二分精神&#xff0c;紧跟fashion你可以的&#xff01;每周三次&#xff0c;打卡即read更快、更全了解泛云圈精彩newsgo go go 联想举办YOGA 2019秋季新品品…

Tensorflow快餐教程(1) - 30行代码搞定手写识别

摘要&#xff1a; Tensorflow入门教程1去年买了几本讲tensorflow的书&#xff0c;结果今年看的时候发现有些样例代码所用的API已经过时了。看来自己维护一个保持更新的Tensorflow的教程还是有意义的。这是写这一系列的初心。快餐教程系列希望能够尽可能降低门槛&#xff0c;少讲…