vue.js及项目实战[笔记]— 02 vue.js基础
一. 基础
1. 注册全局组件
- 应用场景:多出使用的公共性能组件,就可以注册成全局组件,减少冗余代码
- 全局API
Vue.component('组件名','组件对象')
2.附加功能:过滤器&监视改动
- filter || filters
- 全局过滤器(给数据添油加醋显示):
Vue.filter('过滤器名',过滤器方式fn) - 组件内过滤器
filters:{'过滤器名',过滤器方式fn} - 将数据进行添油加醋的操作
- 过滤器分为两种
- 1.组件内的过滤器(组件内有效)
- 2.全局过滤器(所有组件共享)
- 先注册,后使用
- 组件内
filters:{过滤器名:过滤器fn}最终fn内通过return产出最终的数据 - 使用方式是
{{原有数据|过滤器名}} - 需求
- 页面input框输入字符串,反转字符串输出,按参数显示label(中英文)
- 过滤器fn:
- 声明
function(data,argv1,argv2...){} - 使用
{{数据|过滤器名(参数1,参数2)}}
- 声明
- watch监视单个
- computed 监视多个
- computed:{监视的业务名:funcion(){ return 显示一些内容 }}
- 使用
{{计算属性的名称}}
- 使用
- computed:{监视的业务名:funcion(){ return 显示一些内容 }}
- 全局过滤器(给数据添油加醋显示):
**总结**
* 全局:组件/过滤器,让大家直接使用,全局不带s
* 过滤器:function(原始数据,参数1,参数2){ return 结果; }
** 调用{{'数据' | 过滤器名(参数1,参数2)}}
* watch单个监视
* computed群体监视
3.slot
- 内置的组件
- slot就是子组件里给DOM留下的坑
- <子组件>DOM<子组件>
- slot动态的DOM、props是动态的数据
4.组件生命周期
- 需要频繁的创建和销毁组件
- 比如页面中部分内容显示与隐藏,但是用的是v-if
- 组件缓存
- 内置组件中
keep-alive - 被其包裹的组件,在v-if=false的时候,不会被销毁,而是停用
- v-if=true不会创建,而是激活
- 避免频繁创建组件对象的性能损耗
- 内置组件中
- 成对比较
- created 和 beforeCreate
- A 可以操作数据 ,B 数据没有初始化
- mounted 和 beforeMounte
- A 可以操作DOM ,B 还未生成DOM
- updated 和 beforeUpdate
- A 可以获取最终数据 , B 可以二次修改
- 频繁销毁创建的组件使用内置组件
<keep-alive></keep-alive>包裹
- created 和 beforeCreate
activated(){ // 激活的keep-alive v-if="true"
console.log('activated')
},
deactivated(){ // 停用的keep-alive v-if="false"
console.log('deactivated')
},
beforeDestroy(){ // 销毁前 v-if="false"
console.log('beforeDestroy')
},
destroy(){ // 销毁后 v-if="false"
console.log('destroy')
}
vue.js及项目实战[笔记]— 02 vue.js基础的更多相关文章
- vue.js及项目实战[笔记]— 03 vue.js插件
一. vue补充 1. 获取DOM元素 救命稻草,document.querySelector 在template中标示元素`ref = "xxx" 在要获取的时候,this.$r ...
- vue.js及项目实战[笔记]— 01 vue.js
一. vue基础 1. 历史介绍 angular 09年,年份较早,一开始大家是拒绝的 react 2013年,用户体验较好,直接拉到一堆粉丝 vue 2014年,用户体验较好 前端框架与库的区别 j ...
- vue.js及项目实战[笔记]— 05 WebPack
一. 历史介绍 1. 规范 AMD Commonjs||CMD UMD 参考:认识AMD.CMD.UMD.CommonJS 2. 工具 npm bower webpack browserify 参考: ...
- vue.js及项目实战[笔记]— 04 axios
一. axios 1. 基本使用 axios.method('url',[,...data],options) .then(function(res){ }) .catch(function(err) ...
- Unity3D项目实战笔记(10):Unity3D编译IPA的PostEvents–节约时间利器
最近,SDK支付等接入差不多了,就从Unity3D生成IPA (企业版License), 然,需要手动执行的PostEvents竟然多大10项+, 这些我默默的承受了1周时间,每次约浪费20分钟-额外 ...
- Unity3D项目实战笔记(5):延时功能的几种实现
我所做过的系统,分单机版系统(2005年).CS系统(2010年).实时系统(2015年),各个系统均有“延时”功能:定时调度的: 本博客说的是实时系统中的延时功能(基于Unity3D游戏引擎). 在 ...
- Spring Boot +Vue 项目实战笔记(一):使用 CLI 搭建 Vue.js 项目
前言 从这篇文章开始,就进入真正的实践了. 在前端项目开发中,我们可以根据实际情况不同程度地使用 Vue.利用 Vue CLI(或写成 vue-cli,即 Vue 脚手架)搭建出来的项目,是最能体现 ...
- vue.js+koa2项目实战(一)创建项目和elementUI配置
前端采用vuex+element-ui: 后端采用koa2+restfulAPI+sequlize: (一)项目介绍 宠物社区 1.社区 2.好友 3.说说 4.宠粮 5.健康 (二)项目框架 1.V ...
- Spring Boot +Vue 项目实战笔记(二):前后端结合测试(登录页面开发)
前言:关于开发环境 每位 Coder 都有自己偏好的开发工具,从大的方面划分主要有文本编辑器流和 IDE 流两种,我有一段时间也喜欢用编辑器(Sublime Text.Vim),但对我来说开发效率确实 ...
随机推荐
- grid布局笔记学习一之父元素(容器)
HTML代码: <div id="box"> <div class="lbox box1" style="background: # ...
- Android数据存储之SQLite使用
SQLite是D.Richard Hipp用C语言编写的开源嵌入式数据库引擎.它支持大多数的SQL92标准,并且可以在所有主要的操作系统上运行. 在Android中创建的SQLite数据库存储在:/d ...
- redis 实现发布订阅的功能
redis 除了作为缓存的功能外还可以用作消息中间件的功能,这片博客主要是介绍一下 redis 整合spring 实现消息的发布和订阅功能: 1:redis依赖,依赖两个包,redis 包, spri ...
- 用O(1)的时间复杂度删除单链表中的某个节点
给定链表的头指针和一个结点指针,在O(1)时间删除该结点.链表结点的定义如下: struct ListNode { int m_nKey; ListNode* m_pNext; }; 函数的声明如下: ...
- Java 11 快要来了,编译 & 运行一个命令搞定!
Java 11 马上要来了,原定于 9 月发布,还有不到 3 个月了,敬请期待更多新功能被加入到 11 当中,本文本讲的是 JEP 330 这个新特性. 化繁为简,一个命令编译运行源代码 看下面的代码 ...
- 一站式SpringBoot for NoSQL Study Tutorial 开发教程学习手册
SpringBoot2.0 + NoSQL使用教程,项目名称:“SpringBoot2NoSQL” 项目地址: https://gitee.com/475660/SpringBoot2NoSQL 项目 ...
- [Objective-C语言教程]预处理器(18)
Objective-C预处理器不是编译器的一部分,而是编译过程中的一个单独步骤. 简单来说,Objective-C预处理器只是一个文本替换工具,它指示编译器在实际编译之前进行必要的预处理. 我们将Ob ...
- python学习记录(一)
1.打印操作 >>> print('hello') hello >>> print(1+2) 3 2.字符串操作 ① ') Traceback (most rece ...
- 如何开始DDD(续)
上一篇针对用户注册案例简单介绍了如何使用 DDD,接下来我将继续针对这个例子做一下补充.先将User模型丰富起来,因为目前看上去他和贫血模型还没有啥大的区别. 首先还是由领域专家来说明业务,他提出了用 ...
- OpenMP初探
OpenMP支持c.cpp.fortran,本文对比使用openmp和未使用openmp的效率差距和外在表现,然后讲解基础知识. 一.举例 1.使用OpenMP与未使用OpenMP的比较. OpenM ...