详细分析vue表单数据的绑定
作者:字母哥博客 发布时间:2023-07-02 16:27:51
v-model的基本用法
一、本节说明
前面的章节我们学习了v-bind指定,可以通过模型数据去影响视图。我们都知道VUE是支持双向数据绑定的,那么视图是如何影响数据的呢?那就要学到我们这一节的内容v-model。v-model可以将表单输入绑定到对应的模型数据。
二、 怎么做
我们通过v-model实现一个简单的需求
通过表单input绑定模型数据message,表单数据变化data.message也发生变化
然后通过Mustache表达式,将变化之后的message数据显示到视图页面上
三、 效果
四、 深入
v-model实际上是一个语法糖,也就是简写,他实际上包含了两个操作:
v-bind绑定value属性
v-on监听表单元素的输入事件,并改变数据
所以,下面的两种写法实现的效果是一致的。
v-model绑定radio和checkbox
一、本节说明
在绝大多数的表单操作中,我们不只要收集文本输入的数据,我们还可能用到单选和多选。通常,实现单选和多选有以下的方式:
第一种:input标签type=radio实现单选和type=checkbox实现的多选
第二种:select标签-option标签实现的单选与多选
这一节我们来讲解第一种方式实现的多选,及使用v-model指令数据绑定方法。
二、 怎么做
使用radio实现单选,v-model绑定的数据应该是同一个,这样实现单选选项之间的互斥
使用checkbox实现多选,v-model绑定的数据应该是同一个,这样多选的数据才属于同一个数组
三、 效果(动态图片)
四、 深入
怎样在单选或者多选选项显示,默认勾选一个或多个选项?只需要给定默认初始化数据即可
浏览器效果:
v-model绑定select
一、本节说明
上一节我们使用v-model指令,绑定input标签type=radio和type=checkbox,分别实现了单选和多选的视图向模型数据的绑定。这一节我们使用select标签和option标签,结合v-model实现单选和多选的视图向模型数据的绑定。
二、 怎么做
v-model绑定模型数据mvp,实现单选效果
v-model绑定模型数据allDefensiveTeam,结合multiple属性实现多选效果
多选选项的模型数据为数组类型
可以为单选及多选设置默认值,即:默认的勾选项
三、 效果(动态图)
v-model的修饰符
一、本节说明
本节我们介绍一下在使用v-model指令进行表单数据绑定的时候,常用的修饰符,修饰符会对指令功能起到补充和增强的作用。
二、 怎么做
lazy修饰符:默认情况下,input输入会实时影响v-model绑定的数据。加上lazy修饰符,只有当输入框失去焦点会输入回车的时候,才会去改变v-model绑定的数据。
number修饰符:默认情况下,输入框中输入的无论是数字还是字母,都会被当做字符串处理。加上number修饰符,输入内容会被当做数值类型处理。
trim修饰符:可以自动去掉输入内容左右两边的空格
三、 效果
由上图可以看到,当第一个输入框失去焦点的时候,name:curry,才发生数据改变。
输入年龄31,被当作数值类型处理(默认输入是当作字符串类型。因为初始值为null,所以显示是object类型)
第三个输入框,输入内容前后都有空格,但是加上trim修饰符,就自动去掉了。
来源:https://www.kancloud.cn/hanxt/vuejs2/1260633


猜你喜欢
- 话不多说,直接看示例首先是图片标记的写法<img data-src="/images/image.jpg" alt
- NumPy数组的维数称为秩(rank),一维数组的秩为1,二维数组的秩为2,以此类推。在NumPy中,每一个线性的数组称为是一个轴(axes
- 很多jsp程序员都遇到过这样的情况,jsp页面传递参数到servlet,只要参数有中文就是乱码,且大多数是??????乱码,尝试了网上比较普
- 本文实例讲述了SQL Server日期加减函数DATEDIFF与DATEADD用法。分享给大家供大家参考,具体如下:SQL Server 日
- 导出数据库数据:首先打开cmd进入MySQL的bin文件夹下1.导出education数据库里面的users表的表数据和表结构(下面以use
- 近段时间看了一些论坛上面关于分页的ASP程序依然有许多的关注者,但里面只有代码,没有详细的解释,对于初学者来说,这样总是得不到真正的掌握,此
- 前言人类频繁的用手操作鼠标和键盘,为了解决这个问题,selenium工具为我们提供了一个类来处理这些事件— Action
- 很多用ACCEE97开发过数据库的用户都有这种体会:要想在窗体中添加一个命令按钮实现打开通用对话框的功能真是很困难。因为ACCESS97本身
- 一、python运算时精度问题1.运行时精度问题在Python中(其他语言中也存在这个问题,这是计算机采用二进制导致的),有时候由于二进制和
- mat数据格式是Matlab默认保存的数据格式。在Python中,我们可以使用h5py库来读取mat文件。>>> impo
- 限制访问可以基于某种权限,某些检查或者为login视图提供不同的位置,这些实现方式大致相同。一般的方法是直接在视图的 request.use
- 计模式的目的是让代码易维护、易扩展,不能为了模式而模式,因此一个简单的工具脚本是不需要用到任何模式的。简单工厂模式又叫静态工厂方法模式,工厂
- Python求解微分方程(数值解法)对于一些微分方程来说,数值解法对于求解具有很好的帮助,因为难以求得其原方程。比如方程:但是我们知道了它的
- 本文通过Python3+pyqt5实现了python Qt GUI 快速编程的19章的页面索引器应用程序例子。/home/yrd/eric_
- 如下所示:# -*- coding: utf-8 -*-import os import pandas as pdimport numpy
- django启动我们在启动一个django项目的时候,无论你是在命令行执行还是在pycharm直接点击运行,其实都是执行'runse
- LearningjQuery.com 博客帖子列表的左边有一个很酷的日期,如图:从图中我们看到,“2009”垂直排列在右侧。用Firebug
- 前言出发点,网上下了一批png,使用wxFormBuilder做软件工具栏的图标,原图做出来的效果这么大的一个图标让笔者差点就笑岔气了以前都
- 起步在我的印象中,python的机制会自动清理已经完成任务的子进程的。通过网友的提问,还真看到了僵尸进程。import multiproce
- class和id的命名,如果合理,可以使得文档具有清晰的结构我们现在解决办法就是使用现有的元素,通过给他们id或class而得到额外的信息。