小白学vue第四天,从入门到放弃(vue指令的使用加高阶函数)
v-on修饰符的使用
.stop 阻止事件冒泡
调用 stopPropagation()
.prevent 阻止默认事件
调用 event.preventDefault()
.keyCode 键盘事件
.once 只触发一次
————————————
v-model.lazy 懒加载 配合v-model使用:
回车或者失去焦点才会更新
v-model.number 输入框的数字类型为number
v-model.trim 去除输入内容的空格
v-if、v-else-if、v-else使用
在简单的情况 可以直接是使用 v-if
其他情况的话还是使用computed计算属性 比较好 有逻辑性 写起来方便
v-show
v-if直接删除dom元素
v-show 只是 添加了一个display:none
v-for
v-for = “item,index,key) in info”
在使用v-for最好在元素和组件上添加一个:key属性
key的作用高效的更新虚拟dom key最好绑定 item 保证唯一性 有重复就绑index
数组遍历渲染:在 abcde中在c后面加一个f
补充知识:在数组中间添加一个元素 用 splice(x,y,z)x从第几个开始 y 删除几个元素 z 添加元素
原先 没有效率


但是绑定了key 就没有那么麻烦,实现了性能的优化,给每个节点做了一个唯一标识,直接和以前的对比有什么不一样的然后直接插入 ,这个是Vue的虚拟dom的diff算法

数组元素操作 实现响应式
可以实现数据响应式
push()最后添加元素
pop()删除最后一个元素
shit() 删除第一个元素
unshift()最前面添加元素
splice() 删除元素、插入、替换
sort () 冒泡排序
resverse() 翻转
Vue内部函数修改数组:
Vue.set(array,idnex,"")
注意:但是直接通过索引来修改数据不是响应式的
高阶函数
<script>
高阶函数
let newNum = []
let nums = [1, 2, 3, 45, 56, 7]
// filter-----------------------
newNum = nums.filter(function (n) {
return n < 40
})
// map-----------------------
newNum = nums.map(function (n) {
return n * 2
})
// reduce-----------------------
newNum = nums.reduce(function (preValue, n) {
return preValue + n
preValue 就是一次遍历的结果相当于上一次 preValue + n
}, 0) 0是preValue 初始化值
console.log(newNum); </script>
//for ----------------------------
小白学vue第四天,从入门到放弃(vue指令的使用加高阶函数)的更多相关文章
- 一天带你入门到放弃vue.js(三)
自定义指令 在上面学习了自定义组件接下来看一下自定义指令 自己新建的标签赋予特殊功能的是组件,而指定是在标签上使用类似于属性,以v-name开头,v-on,v-if...是系统指令! v-是表示这是v ...
- 一天带你入门到放弃vue.js(一)
写在前面的话! 每个新的框架入手都会进行一些列的扯犊子!这里不多说那么多!简简单单说一下vue吧! Vue.js是目前三大框架(angular,vue,react)之一,是渐进式js框架,据说是摒弃了 ...
- 一天带你入门到放弃vue.js(二)
接下来我们继续学习一天带你入门到放弃系列vue.js(二),如有问题请留言讨论! v-if index.html <div id="app"> <p v-if=& ...
- webpack 配置 Vue 多页应用 —— 从入门到放弃
webpack 配置 Vue 多页应用 -- 从入门到放弃 一直以来,前端享有无需配置,一个浏览器足矣的优势,直到一大堆构建工具的出现,其中 webpack 就是其中最复杂的一个,因此出现了一个新兴职 ...
- Vue(四):实例化第一个Vue应用
实例化语法 var vm = new Vue({ // 选项 }) Vue 构造器中的内容 <!DOCTYPE html> <html> <head> <me ...
- 小白学Linux(四)--系统常用命令
这里记录一下基础的系统常用命令,都是日常可能用到的,需要记住的一些命令.主要分为5个模块:关于时间,输出/查看,关机/重启,压缩归档和查找. 时间: date :查看设置当前系统时间,dat ...
- 小白学Python(8)——pyecharts 入门
简介: pyecharts 是一个用于生成 Echarts 图表的类库. echarts 是百度开源的一个数据可视化 JS 库,主要用于数据可视化.pyecharts 是一个用于生成 Echarts ...
- 自学vue第二天,从入门到放弃(生命周期的理解)
生命周期的理解 beforeCreate 创建前 数据还没有监听,没有绑定到vue对象实例,同时也没有挂载对象 没有数据也没有方法 created 在创建后 数据和方法已经 data数据已经绑定好了 ...
- VUE的学习_从入门到放弃(一)
一.vue的功能及作用 工作方式如下 1.不用操作DOM 2.单页面应用web项目 简称:SPA 3.当下各种新框架都采用的类似Vue或者类似React的语法去作为主语法,微信小程序/MpVue... ...
随机推荐
- 10、ssh中scp、sftp程序详解
每次都是全量拷贝,rsync是增量拷贝 10.1.scp的基本用法: -r:拷贝目录; -p: 保持属性: -l:限速设置; scp -P52113 /etc/hosts lc@172.16.1.41 ...
- AD设计中地铜突然消失且无法选中删除的解决办法
作者:struct_mooc 博客地址: https://www.cnblogs.com/structmooc/p/14984466.html 前几天在设计一块电路板的时候,已经全部设计完了!但是 ...
- Jenkins 凭证 Devops 的粘合剂
大家好,我是小猿来也,一个热衷于搞 Devops 自动化的 Java 程序猿. 万事具备,只欠东风.当我决定大搞特搞 Devops 的时候,Jenkins 凭证却傻傻分不清. 玩 Devops 的小伙 ...
- CRM软件从哪些方面帮助企业更上一层楼
CRM顾客智能管理系统可以将"以顾客为管理中心"的管理模式与高新科技方式紧密结合,协助公司搭建优良的客户关系管理,改进顾客的消費感受,进而提升顾客的满意率,为公司产生大量的盈利.据 ...
- Quartz:Quartz定时代码实现
1.添加pom.xml <dependency> <groupId>org.quartz-scheduler</groupId> <artifactId> ...
- kafka、rabbitmq、redis区别,各自适合什么场景?
在应用场景方面 RabbitMQ RabbitMQ遵循AMQP协议,由内在高并发的erlanng语言开发,用在实时的对可靠性要求比较高的消息传递上,适合企业级的消息发送订阅,也是比较受到大家欢迎的. ...
- linux挂载光驱
挂载光驱到linux中.linux的镜像盘中有安装oracle的所有的软件包,可以会用yum一键安装. 1.此时的linux的界面显示光驱图标 2.挂载 因为光盘里面的文件是只读模式的,yum安装时不 ...
- NTP配置(广播模式并且无认证)
1.服务器端 1.1服务器本地同步自己的时钟,否则无法对外提供NTP服务 [NTP]ntp refclock-master 3 [NTP]ntp refclock-master 127.127.1.1 ...
- 让5G技术“智慧”生活
1.通讯技术的发展历程 2.5G技术的指标和具体概述 3. 5G的三个关键技术及概述 4.5G的应用场景及业务及安全挑战 如果你认为5G带来的只是下载视频 ...
- stream之forEach的用法
public static class Student{ private String name; private String sex; private String age; public Str ...