我们还是先回顾一下上一次的重点:

1.事件绑定,我们可以对分别用方法和js表达式对事件进行处理

2.当方法名带括号的时候,在方法中一定要传参;而不带括号的时候,vm会自动配置默认event

3.各类事件修饰器

之前我们提到过表单绑定,那么现在我们来深入了解一下,Vue这一令人惊奇的双向表单绑定功能:
直接进入正题:
 
<input v-model=" message ">
<p>{{ message }}</p>
这是最简单的表单双向绑定,标签P中的值将随着vm中值的变化而变化
值得注意的是,就算我们这样写:
<input v-model=" message " value=" ye ">
也不会读取value,message的值只会随着vm中的数据而变化,也就应证了vue数据驱动视图的原理
 
我们再延展一下:
<span> 文本框中输入的值为: </span>
<p> {{ message }} </p>
<textarea v-model=" message " ></textarea>
同理:
我们这样写也是没有作用的:
<textarea>{{ message }}</textarea>
 
继续深入:
当我们在使用多选框的时候:
 
单个checkbox:
<input v-model="checked" type="checkbox" id=" lla ">
<lable for=" lla ">{{ checked }}</lable>
这个时候checked的值将会在true和false之间切换。
 
多个checkbox的时候:
<input type=" checkbox " id="a" value="f" v-model="checked">
<lable for="a">a</lable>
 
<input type=" checkbox " id="b" value="m" v-model="checked">
<lable for="b">b</lable>

<input type=" checkbox " id="c" value="c" v-model="checked">
<lable for="c">c</lable>
 
<span>选中的为:{{ checked }}</span>

当我们对input设置了value的时候,那么checked的值就不再是true or false了,而是相应的value值

 
new Vue:({
    el:'',
    data:{
        checked:[]
}
})
如上面的代码,这个时候,返回在span中的值,是以数组的形式渲染的

单个radio:
<input type="radio" id="a" value="f" v-model="picked">
<lable for=" a ">a</lable> 
 
<input type="radio" id="b" value="m" v-model="picked">
<lable for=" b ">b</lable>
 
<span>{{ picked }}</span>

其实和多选框的原理是一样的,区别仅仅在于这里span中的值不是一个数组而是一个单一的值

 
下拉菜单 select:::
 
单选:
 
<select v-mode="selected">
    <option>a</option>
    <option>b</option>
    <option>c</option>
</select>
 
<span>{{ selected }}</span>
option标签没有指定value属性时,那么返回的值就是标签中的内容
 
 
多选:
<select v-mode="selected" multiple>
    <option>a</option>
    <option>b</option>
    <option>c</option>
</select>
 
<span>{{ selected }}</span>

这和多选框checked一样,返回的值依然为一个数组

 
 
渲染option列表:
 
我们可以发现option总是为多个,那么我们为何不能用列表来渲染呢:
<select v-model="selected">
    <option v-for=" item in items " v-bind:value=" option.value ">{{ option.text }}</option>
</select>
 
<span>{{ selected }}</span> 
 
new Vue({
    el:'',
    data:{
        selected:'a',
        option:
            [
{ text: 'One', value: 'A' },
{ text: 'Two', value: 'B' },
{ text: 'Three', value: 'C' }
]
 
}
})
这里需要注意的是:
我们在这里绑定了option的value属性,如果不对它进行绑定,那么最后选出来的值就是
value而不是text
 
 
 
下面我们来总结一下数据绑定及了解一下相关修饰器:
<input type="radio" v-model="picked" value="a">
//选中picked时是字符串 ”a“
<input type="radio" v-model="toggle">
//选中时,将会是true和false间切换
<select v-model="selected">
    <option value="aaa">aaa</option>
</select> 
//selected时会输入字符串aaa
 
 
<input type="checkbox" v-model="toggle"  v-bind:true-value="a" v-bind:false-value="b">
//  vm.toggle === vm.a (checked)
// vm.toggle === vm.b( unchecked )
 
这里其实没有多大变化,我们仅仅是对true和false分别绑定了一个值而已,很好理解
 
<select v-model="selected">
    <option v-bind:value=" { number : aaa } ">aaa</option>
</select>
 
vm.selected.number === aaa

这里我们绑定了一个对象,相应的我们也读取了对象的值
 
 
接下来进入今天最后的环节,讲一讲数据绑定中相应的修饰器:
 
Lazy:
<input v-model.lazy="message">
// 这样的话,视图将会在输入完成之后变化,而不会即时变化
 
number:
<input v-model.number="message">
//这个可以强制将输入的数据转换成数字
 
trim
<input v-model.trim="message">
//自动去除字符串收尾的空格。
 
今天以此收尾,昨天晚上因为其他事耽搁了,后面尽量补上一篇,同时明天晚上也许也会交白卷,希望大家谅解,这两天学习状态不是很好,会及时调整,感谢各位的支持,晚安。

Vue学习之路---No.6(分享心得,欢迎批评指正)的更多相关文章

  1. vue学习之路 - 4.基本操作(下)

    vue学习之路 - 4.基本操作(下) 简述:本章节主要介绍 vue 的一些其他常用指令. Vue 指令 这里将 vue 的指令分为系统内部指令(vue 自带指令)和用户自定义指令两种. 系统内部指令 ...

  2. Vue学习之路之登录注册实例代码

    Vue学习之路之登录注册实例代码:https://www.jb51.net/article/118003.htm vue项目中路由验证和相应拦截的使用:https://blog.csdn.net/wa ...

  3. Vue学习之路---No.4(分享心得,欢迎批评指正)

    这里说声抱歉,周末因为有其他事,没有更新博客,那么我们今天继续上周5的说. 老规矩,先回顾一下上一次的重点: 1.利用V-if和v-else来提到show()和hide(),同时要记住,v-else一 ...

  4. JAVA学习之路与大家分享

    这是我四年以前总结的JAVA学习之路,希望对初学者或想从事JAVA开发的人有帮助. 本人是软件工程专业出身,先后学过C.C++.JAVA.VB.delphi等等开发语言以及网络相关管理技术.哎,好久不 ...

  5. Vue学习之路第一篇(学习准备)

    1.开发工具的选择 这个和个人的开发习惯有关,并不做强求,厉害的话用记事本也可以.但是我还是建议用人气比较高的编辑工具,毕竟功能比较全面,开发起来效率比较高. 我之前写前端一直用的是sublimete ...

  6. Vue学习之路---No.2(分享心得,欢迎批评指正)

    昨天我们大致了解了有关Vue的基础知识和语法:今天我们继续在大V这条路上前进. 首先,我们回忆一下昨天提到的相关知识点: 1.了解Vue的核心理念------"数据驱动视图" 2. ...

  7. Vue学习之路---No.7(分享心得,欢迎批评指正)

    老规矩,先回顾一下上回的重点: 1.对于input框,若为单选框,如果没有对其设置value,那么其checked的值将在true Or false之间切换:如果设置了value,那么将会切换valu ...

  8. Vue学习之路---No.3(分享心得,欢迎批评指正)

    同样的,我们先来回顾一下昨天学习的内容: 1.利用v-once来组织双向绑定 2.filter{}过滤器的使用(详情请看上一章) 3.computed(计算属性),利用computed属性实现filt ...

  9. Vue学习之路---No.1(分享心得,欢迎批评指正)

    首先为了打消大家对Vue.js存在的顾虑,先通过大家所熟知的JQ作为对比. 都知道JQ的语法相对简单.清楚.使用方便.功能齐全: 那么Vue.js呢,同样的,Vue.js与JQ在很多地方都是相同之处, ...

随机推荐

  1. Servlet生命周期方法,request.getRequestDispatcher

    1,request.getRequestDispatcher 方法全称javax.servlet.ServletRequest.getRequestDispatcher(String) 2,在web. ...

  2. SpringMVC+RestFul详细示例实战教程

    一.SpringMVC基础入门,创建一个HelloWorld程序 1.首先,导入SpringMVC需要的jar包. 2.添加Web.xml配置文件中关于SpringMVC的配置 <!--conf ...

  3. 2017《JAVA技术》预备作业

    1.阅读邹欣老师的博客,谈谈你期望的师生关系是什么样的? ==我期望的师生关系是长辈和晚辈,前辈和后生,朋友与朋友之间的关系,作为晚辈,要尊敬长辈,不能对长辈进行言语攻击和起冲突:作为后生,要谨遵教诲 ...

  4. 详谈Struts2

    介绍struts2: struts2是一个基于mvc设计模式的web层框架. 详谈struts2的执行流程: struts2的执行流程:用户发送请求---->首先经过Struts2的核心过滤器- ...

  5. C++编程练习(1)----“实现简单的线性表的顺序存储结构“

    线性表的顺序存储结构,指的是用一段地址连续的存储单元依次存储线性表的数据元素. 故可以用数组来实现顺序存储结构. 用C++编写的利用数组实现简单的读取.插入和删除功能的线性表. #include< ...

  6. 一篇文章搞定css3 3d效果

    css3 3d学习心得 卡片反转 魔方 banner图 首先我们要学习好css3 3d一定要有一定的立体感 通过这个图片应该清楚的了解到了x轴 y轴 z轴是什么概念了. 首先先给大家看一个小例子: 卡 ...

  7. windows visual studio 2015安装

    下载 首先到微软官方下载在线安装文件 https://www.microsoft.com 运行安装 点击运行后选择 自定义 选择安装功能,把sql server去掉,是数据库插件 点击下一步,中途会提 ...

  8. java静态初始化代码块

    /* * 为什么Java中为什么没有静态构造函数.其实Java中不叫静态构造函数,称作静态初始化,或者静态代码块. * 可以通过这样的代码实现相同的功能: */ public class test { ...

  9. 原生js实现轮播图

    原生js实现轮播图 很多网站上都有轮播图,但找到一个系统讲解的却很难,因此这里做一个简单的介绍,希望大家都能有所收获,如果有哪些不正确的地方,希望大家可以指出. 原理: 将一些图片在一行中平铺,然后计 ...

  10. 使用光盘iso实现Linux操作系统的自动安装部署

    前边写了一篇使用 PXE 的方式批量安装操作系统,不是任何时候任何地方都有环境来通过 PXE 方式来进行安装.如果此时需要通过光盘安装,默认的情况下是通过交互式方式进行安装,其实也可以通过 kicks ...