温故而知新,这句话说的真的有道理。每次回顾vue总会学到不一样的知识点,我就在想,我第一遍到底看了什么?

废话不多说,简要记录今天的所得:

1.v-if 与 v-show

同:都是条件渲染

异:渲染的机制不一样

  v-if  是“真正”的渲染, 通过事件监听、子组件的销毁与重建

  v-show  是通过css来 改变视觉上的渲染 通过display属性的改变来营造出一种假象 “display : 'none' ”

2.v-for 列表渲染

  v-for = "item in items "

  遍历数组  可以接受第二个参数  index

  v-for = "(item,index) in items "

  遍历对象 可以接受三个参数  第二个为 key  第三个为 index

 v-for = "(item,key,index) in items "

3.数组的 splice()方法  可以删除、替换、添加数据

  Array.splice(index, num )  删除数据

    index: 开始的位置

    num:要删除的数据的个数

    var fruits = ["Banana", "Orange", "Apple", "Mango"];
    fruits.splice(2,2);

    // Banana,Orange

  Array.splice(index, 0 ,insertValue) 添加数据

    index: 开始的位置

    0:不删除任何数据

    insertValue:要添加的数据

    var fruits = ["Banana", "Orange", "Apple", "Mango"];
    fruits.splice(2,0,"Lemon","Kiwi");

    //  Banana,Orange,Lemon,Kiwi,Apple,Mango

  Array.splice(index, num ,insertValue) 替换数据

       index: 开始的位置

    num:要删除的数据的个数

    insertValue:要替换的的数据

  var fruits = ["Banana", "Orange", "Apple", "Mango"];

  fruits.splice(2,1,"Lemon","Kiwi");

  //  Banana,Orange,Lemon,Kiwi,Mango

4. v-for 在数组中使用,key 是必须的

5.每个组件都有自己的作用域,任何数据都不会自动进入到组件中,需要使用prop 来传递数据

6. 在一些特定元素中,要使用 is 特性来挂载组件

7. 如果想把异个对象的所有数据都作为prop进行传递 ,可以使用不带参数的v-bind

  

todo: {
text: "Hello Vue",
isComplete: false
}
<todo-item  v-bind="todo"></todo-item>

等价于:

<todo-item  v-bind:text="todo.text" v-bind:is-complete="todo.isComplete"></todo-item>

8.字面量法与动态语法

这是常常犯错误之一

这是字符串“1” String

<my-component some-prop="1"></my-component>

这是数字“1”  Number

<my-component v-bind:some-prop="1"></my-component>

9.prop 验证

如果需要验证规则,则需要使用对象的形式来定义prop

Vue.component('example', {
props: {
// 基础类型检测 (`null` 指允许任何类型)
propA: Number,
// 可能是多种类型
propB: [String, Number],
// 必传且是字符串
propC: {
type: String,
required: true
},
// 数值且有默认值
propD: {
type: Number,
default: 100
},
// 数组/对象的默认值应当由一个工厂函数返回
propE: {
type: Object,
default: function () {
return { message: 'hello' }
}
},
// 自定义验证函数
propF: {
validator: function (value) {
return value > 10
}
}
}
})

2017.12.21 学习vue的新得的更多相关文章

  1. java一周学习记录(2017/12/2)

    姓名:Danny                               日期:2017/12/2 周日 周一 周二 周三 周四 周五 周六 所花时间 120 150 190 150 180 28 ...

  2. Vue2 第四天学习(Vue的生命周期)

    阅读目录 1.理解VUE---混合 2.Vue实例化选项 3.Vue实例化的生命周期 回到顶部 1.理解VUE---混合 在了解Vue生命周期之前,我们先来学习Vue中的混合吧: 为什么需要使用混合? ...

  3. 【我的书】Unity Shader的书 — 文件夹(2015.12.21更新)

    写在前面 感谢全部点进来看的朋友.没错.我眼下打算写一本关于Unity Shader的书. 出书的目的有以下几个: 总结我接触Unity Shader以来的历程,给其它人一个借鉴.我非常明确学Shad ...

  4. 从零开始学习Vue.js,学习笔记

    一.为什么学习vue.js methods 只有纯粹的数据逻辑,而不是去处理 DOM 事件细节. vue.js兼具angular.js和react的优点,并且剔除了他们的缺点 官网:http://cn ...

  5. 2017.12.25 Mybatis物理分页插件PageHelper的使用(二)

    参考来自: 官方文档的说明:https://github.com/pagehelper/Mybatis-PageHelper/blob/master/wikis/zh/HowToUse.md 上篇博客 ...

  6. 学习vue就是那么简单,一个简单的案例

    vue是前端兴起的一个javascript库,相信大家都使用过jQuery,虽然vue和jQuery没有可比性,但从熟悉的角度去理解新的东西或许会容易接受一些,有时候由于思想和模式的转变会带来阵痛,但 ...

  7. 学习 vue 源码 -- 响应式原理

    概述 由于刚开始学习 vue 源码,而且水平有限,有理解或表述的不对的地方,还请不吝指教. vue 主要通过 Watcher.Dep 和 Observer 三个类来实现响应式视图.另外还有一个 sch ...

  8. CS229 - MachineLearning - 12 强化学习笔记

    Ng的机器学习课,课程资源:cs229-课件    网易公开课-视频 问题数学模型: 马尔科夫过程五元组{S.a.Psa.γ.R},分别对应 {状态.行为.状态s下做出a行为的概率.常数.回报}. 一 ...

  9. vuejs学习——vue+vuex+vue-router项目搭建(三)

    前言 vuejs学习——vue+vuex+vue-router项目搭建(一) vuejs学习——vue+vuex+vue-router项目搭建(二) 为什么用vuex:组件之间的作用域独立,而组件之间 ...

随机推荐

  1. java获取配置文件中的key=value值

    1.献上工具类 package com.test.util; import java.io.FileInputStream; import java.io.FileNotFoundException; ...

  2. 【爬虫小程序:爬取斗鱼所有房间信息】Xpath

    # 本程序亲测有效,用于理解爬虫相关的基础知识,不足之处希望大家批评指正from selenium import webdriver import time class Douyu: "&q ...

  3. 什么是VR中的vection?

    Vection是VR领域的一个专有名词,其义指“在虚拟现实中给人带来‘移动’(self-motion)感觉的认知因素”1.也就是说,vection就是指那些给玩家带来“我正在这个虚拟环境中移动”这种感 ...

  4. spring5 源码深度解析----- 创建AOP代理之获取增强器

    在上一篇的博文中我们讲解了通过自定义配置完成了对AnnotationAwareAspectJAutoProxyCreator类型的自动注册,那么这个类到底做了什么工作来完成AOP的操作呢?首先我们看看 ...

  5. Spring Security 前后端分离登录,非法请求直接返回 JSON

    hello 各位小伙伴,国庆节终于过完啦,松哥也回来啦,今天开始咱们继续发干货! 关于 Spring Security,松哥之前发过多篇文章和大家聊聊这个安全框架的使用: 手把手带你入门 Spring ...

  6. resmgr:cpu quantum等待事件 触发的bug问题

    1>resmgr:cpu quantum等待事件 触发的bug问题  (处理心得) 1.客户反馈数据库服务器在某个时间段总是特别繁忙,获取awr报告分析繁忙原因

  7. margin和text-align实现水平居中的区别

    1.首先text-align只应用于内联块和内联元素 text-align影响的是元素中的文本内容的对其方式(默认是left,设置为center时水平居中) 所以,将text-align设置为cent ...

  8. Java工程师学习指南(完结篇)

    Java工程师学习指南 完结篇 先声明一点,文章里面不会详细到每一步怎么操作,只会提供大致的思路和方向,给大家以启发,如果真的要一步一步指导操作的话,那至少需要一本书的厚度啦. 因为笔者还只是一名在校 ...

  9. C语言I作业004

    这个作业属于那个课程 C语言程序设计II 这个作业要求在哪里 作业 我在这个课程的目标是 掌握使用for循环语句实现指定次数的循环程序设计 这个作业在那个具体方面帮助我实现目标 pta运用for循环语 ...

  10. Django高级实战 开发企业级问答网站 ✌✌

    Django高级实战 开发企业级问答网站 (一个人学习或许会很枯燥,但是寻找更多志同道合的朋友一起,学习将会变得更加有意义✌✌) 从实际需求分析开始,实现当今主流知识问答应用的功能,包括动态.文章.问 ...