2017.12.21 学习vue的新得
温故而知新,这句话说的真的有道理。每次回顾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的新得的更多相关文章
- java一周学习记录(2017/12/2)
姓名:Danny 日期:2017/12/2 周日 周一 周二 周三 周四 周五 周六 所花时间 120 150 190 150 180 28 ...
- Vue2 第四天学习(Vue的生命周期)
阅读目录 1.理解VUE---混合 2.Vue实例化选项 3.Vue实例化的生命周期 回到顶部 1.理解VUE---混合 在了解Vue生命周期之前,我们先来学习Vue中的混合吧: 为什么需要使用混合? ...
- 【我的书】Unity Shader的书 — 文件夹(2015.12.21更新)
写在前面 感谢全部点进来看的朋友.没错.我眼下打算写一本关于Unity Shader的书. 出书的目的有以下几个: 总结我接触Unity Shader以来的历程,给其它人一个借鉴.我非常明确学Shad ...
- 从零开始学习Vue.js,学习笔记
一.为什么学习vue.js methods 只有纯粹的数据逻辑,而不是去处理 DOM 事件细节. vue.js兼具angular.js和react的优点,并且剔除了他们的缺点 官网:http://cn ...
- 2017.12.25 Mybatis物理分页插件PageHelper的使用(二)
参考来自: 官方文档的说明:https://github.com/pagehelper/Mybatis-PageHelper/blob/master/wikis/zh/HowToUse.md 上篇博客 ...
- 学习vue就是那么简单,一个简单的案例
vue是前端兴起的一个javascript库,相信大家都使用过jQuery,虽然vue和jQuery没有可比性,但从熟悉的角度去理解新的东西或许会容易接受一些,有时候由于思想和模式的转变会带来阵痛,但 ...
- 学习 vue 源码 -- 响应式原理
概述 由于刚开始学习 vue 源码,而且水平有限,有理解或表述的不对的地方,还请不吝指教. vue 主要通过 Watcher.Dep 和 Observer 三个类来实现响应式视图.另外还有一个 sch ...
- CS229 - MachineLearning - 12 强化学习笔记
Ng的机器学习课,课程资源:cs229-课件 网易公开课-视频 问题数学模型: 马尔科夫过程五元组{S.a.Psa.γ.R},分别对应 {状态.行为.状态s下做出a行为的概率.常数.回报}. 一 ...
- vuejs学习——vue+vuex+vue-router项目搭建(三)
前言 vuejs学习——vue+vuex+vue-router项目搭建(一) vuejs学习——vue+vuex+vue-router项目搭建(二) 为什么用vuex:组件之间的作用域独立,而组件之间 ...
随机推荐
- Linux中安装传输的命令行工具
创建lrzsz目录: mkdir /usr/local/lrzsz 进入lrzsz目录: cd /usr/local/lrzsz 下载lrzsz压缩包: wget http://www.ohse.de ...
- Java利用反射排序
前言 Java为我们提供了几种排序得方法,比如Arrays和Collections类,但是前提是数组或者集合中的元素都必须实现Comparable接口,基本的数据类型都已经实现了Comparable接 ...
- Spring Boot (八): Mybatis 增强工具 MyBatis-Plus
1. 简介 在上一篇文章<Spring Boot (七): Mybatis极简配置> 中我们介绍了在 Spring Boot 中 Mybatis 的基础使用方式,其中有一部分美中不足的是 ...
- JavaScript 面向对象编程 · 理解对象
前言: 在我们深入 面向对象编程之前 ,让我们先理解一下Javascript的 对象(Object),我们可以把ECMAScript对象想象成散列表,其值无非就是一组名值对,其中值可以是数据 ...
- Centos6 日常使用小结
网络配置目录 1./etc/sysconfig/network-script/ifcfg-eth0 2.netstat -rn Kernel IP routing table Destination ...
- Java 学习笔记之 线程interrupted方法
线程interrupted方法: interrupted()是Thread类的方法,用来测试当前线程是否已经中断. public class InterruptThread extends Threa ...
- ELK 学习笔记之 elasticsearch Bulk操作
Bulk操作: Bulk操作用于批量插入数据: 请求体格式: 编辑一个文件:(插入2个新的文档) curl -XPOST 'http://192.168.1.151:9200/library/book ...
- Android适配总结
1.dp与px的 密度类型 代表的分辨率 屏幕密度 换算 比例 低密度(ldpi) 240x320 120 1dp=0.75px 3 中密度(mdpi) 320x480 160 1dp = 1px 4 ...
- jq方法写选项卡的基本原理以及三种方法
使用jq写选项卡,告别了繁琐的循环以及命名规范 基本原理: 1.当某一个btn被选中时,将这个btn的背景颜色设为橘色,其余兄弟btn背景颜色设为空(none) 2.如果子div与btn的索引相同,就 ...
- Springboot之初入江湖
Hello,各位小伙伴大家好,我是小栈君. 今天的分享主题是关于Springboot主题分享,其实在写这个系列主题之前有想过一些关于分享技术的顺序问题,因为我在创建"IT干货栈"这 ...