14-----表单输入绑定
vue的核心:声明式的指令和数据的双向绑定。
那么声明式的指令,已经给大家介绍完了。接下来我们来研究一下什么是数据的双向绑定?
另外,大家一定要知道vue的设计模式:MVVM
M是Model的简写,V是View的简写,VM就是ViewModel。
单向绑定和双向绑定的区别?
单向绑定非常简单,就是把Model绑定到View,当我们用JavaScript代码更新Model时,View就会自动更新。
有单向绑定,就有双向绑定。
如果用户更新了View,Model的数据也自动被更新了,这种情况就是双向绑定。
什么情况下用户可以更新View呢?填写表单就是一个最直接的例子。当用户填写表单时,View的状态就被更新了,如果此时MVVM框架可以自动更新Model的状态,那就相当于我们把Model和View做了双向绑定。
其实单项数据也有双向绑定的意思,不过页面变动后数据的变化不会发生自动更新。
我们可以这样认为:双向数据绑定=单向数据绑定+UI事件监听。
我们先看个vue中双向数据绑定的例子:
<body><div id="app"><input type="text" v-model="meg"><p>{{data}}</p></div><script>var app = new Vue({el:'#app',data :{meg:''}})</script> </body>
再简单不过了,效果显示,当我们在input输入框中输入内容的时候,下面p标签同步显示内容。这就是最典型的双向数据绑定的例子。vue里使用v-model实现此想法。
那么我们看一下v-model的实现原理是怎样的呢?
首先大家一定要知道,官网上介绍的。
通过官网的介绍,我们知道v-mode指令是v-bind:vlaue 和v-on:input的结合体。
看个例子吧,同时给大家介绍了计算属性getter的用法。
<!-- <input type="text" v-model = 'usernameValue'> --><!-- 等价于: --><input type="text" v-bind:value='usernameValue' @input='inputHandler'><button @click='commitHandler'>提交</button><!-- ref 被用来给元素或子组件注册引用信息。引用信息将会注册在父组件的 $refs 对象上。如果在普通的 DOM 元素上使用,引用指向的就是 DOM 元素;如果用在子组件上,引用就指向组件实例 --><div class="list" ref = 'item'></div>
var set = new Vue({el:'#set',data:{username:'',txt:''},methods:{commitHandler(){this.$refs.item.innerHTML = this.usernameValue;},inputHandler(e){this.usernameValue = e.target.value;}},computed:{usernameValue:{get(){return this.username;},set(newValue){this.username = newValue;}}}
看完上个例子之后,相信大家对v-model实现双向数据绑定和计算属性的setter方法一定有个新的认识了。
接下来我们看看v-model的一些基础用法!
v-model
v-model
指令在表单 <input>
及 <textarea>
元素上创建双向数据绑定。它会根据控件类型自动选取正确的方法来更新元素。尽管有些神奇,但 v-model
本质上不过是语法糖。它负责监听用户的输入事件以更新数据,并对一些极端场景进行一些特殊处理。
v-model只适用在表单控件中
比如:表单文本、多行文本、复选框、单选按钮、多选按钮、选择框。内容太多,就不给大家一一阐述了。大家一定要去阅读vue的官网文档
https://cn.vuejs.org/v2/guide/forms.html
ps:官网上的vue的文档非常好,喜欢vue的同学没事多来看看!1
转载于:https://www.cnblogs.com/edeny/p/9358666.html
14-----表单输入绑定相关推荐
- Vue007_ 表单输入绑定
表单输入绑定 使用 v-model 对表单数据自动收集 1) text/textarea 2) checkbox 3) radio 4) select <!DOCTYPE html> & ...
- Vue表单输入绑定(文本框和复选框)
文本框 <!DOCTYPE html> <html> <head> <meta charset="utf-8"&g ...
- Vue表单输入绑定(元婴中期)
表单输入绑定 基础用法 你可以用 v-model 指令在表单 <input>.<textarea> 及 <select> 元素上创建双向数据绑定.它会根据控件类型自 ...
- uniapp 输入法画面_表单输入绑定 · uni-app跨平台移动应用开发 · 看云
# 表单输入绑定 ## [基础用法](https://cn.vuejs.org/v2/guide/forms.html#%E5%9F%BA%E7%A1%80%E7%94%A8%E6%B3%95 &qu ...
- Vue.js 表单输入绑定
基础用法 你可以用 v-model 指令在表单 <input>.<textarea> 及 <select> 元素上创建双向数据绑定.它会根据控件类型自动选取正确的方 ...
- 9.Vue 表单输入绑定
基础用法 你可以用 v-model 指令在表单 <input>.<textarea> 及 <select> 元素上创建双向数据绑定.它会根据控件类型自动选取正确的方 ...
- Vue学习笔记(六) 表单输入绑定
v-model 指令在表单元素上创建双向数据绑定,它负责用于监听用户输入事件以更新数据 注意,v-model 会忽略所有表单元素特性的初始值,而总是将 Vue 实例的数据作为数据来源 1.输入框 &l ...
- Vue基础-09-表单输入绑定
Vue基础-09-表单输入绑定 Vue中想要操作表单的数据,无需再dom操作.比如登录.注册.添加 Vue中提供了一个指令v-model,可以表单的双向数据绑定 双向绑定 表单原始上面通过v-mode ...
- 02.Vue3 基础语法:常用语法、列表渲染、事件绑定和表单双向绑定
Vue3 基础语法 1. Vue 中应用和组件的基础概念 createApp createApp 表示创建一个 Vue 应用,存储在 app 变量中. 传入的参数表示,这个应用最外层的组件,应该如何展 ...
- react表单双向绑定处理
react中处理表单双向绑定的方法: constructor() {super()this.state = {commentData: [{name: '冯昕',text: '说自己是大帅哥',id: ...
最新文章
- MFC程序在控制台输出的实现
- 九余定理(hdu1013)
- 连接端口 配置hive_Zeppelin带有Kerberos认证的Hive解释器的配置
- CRMEB系统安装访问不了
- 克服SOA实施过程中的障碍
- 利用Java制作背单词小应用
- 天天学习: 关于美资,台资和国企比较分析
- 考研必备数学公式大全(数学二)(线性代数篇)
- vmware VCPU的一点理解记录
- 费控系统对接用友NC
- misc类设备驱动1——板载蜂鸣器驱动测试
- python 录屏_python实现录制全屏和选择区域录屏功能
- N-gram模型详解
- 网络编程中同步与异步,IO阻塞与非阻塞总结
- python 发送邮件535, 'Error: authentication failed' 解决
- docker pdf 中文版 linux,Docker入门实战手册PDF
- JavaWeb学习之BS/CS架构及tomcat容器项目部署
- 互联网赚钱的项目有哪些?6个互联网赚钱模式
- 柳州高级中学2021年高考成绩查询,2021年柳州所有高中排名一览表
- [家里蹲大学数学杂志]第265期武汉大学2013年高等代数考研试题参考解答
热门文章
- php qq邮箱发送邮件报错_PHP实现发送邮件(二)
- mysql下载for linux 64_mysql官网下载linux版本安装包
- php 计算每年春节日期,动态显示2019年农历春节倒计时—2019年1月21日23时45分
- python创建链表实例_python数据结构链表之单向链表(实例讲解)
- 卷积神经网络(CNN)结尾篇:可视化跟踪(Visualize)
- HTTP Session 的工作原理以及几个思维扩展
- 2016/11/14
- @ResponseStatus
- There is no Action mapped for namespace / and action name accredit.
- 提升网站转化率的四步优化方案