杂记 -- 关于ref、kepp-alive、nextTick、fetch
1、ref:定义一个普通的dom节点或一个vue的组件实例对象
定义方法:
<div class="page1">
<button @click="linkPage2">点击</button>
<p ref="p">我是p标签</p>
<about ref="about"></about>
</div>
获取ref方法:vm.$refs.xxx (要在节点渲染后获取)
mounted(){
console.log(this);//page1这个vue组件的实例对象
console.log(this.$refs.p); //普通的dom节点
console.log(this.$refs.about);//相当于子组件的实例对象
this.$refs.about.data = 111;
console.log(this.$refs.about.data);
}
2、keep-alive:缓存一个组件的数据,而不动态销毁
包含参数:
include:'string || reg',匹配到的会被缓存,跟name配合使用
exclude:'string || reg',匹配到的不会被缓存
用法:
<keep-alive inclue="page3">
<router-view></router-view>
</keep-alive>
3、this.$nextTick(function(){},[Object obj]):类似于setTimeout等将任务放入异步的等待队列中,用与异步操作
用法:
<template>
<div class="page1">
<p ref="p">同步的:{{msg}}</p>
<p>异步的:{{msg1}}</p>
<button @click="changeMsg">点击</button>
</div>
</template>
<script>
export default {
data(){
return {
msg:123,
msg1:123
}
},
methods:{
changeMsg(){
this.msg = 233;
let ctime = new Date();
this.$nextTick( () => {
this.msg1 = 233;
console.log(new Date() - ctime);
})
}
},
created(){
this.$nextTick( ()=> { //异步,使在created中就可以操作dom节点
console.log('异步操作');
console.log(this.$refs.p);
})
}
}
</script>
4、fetch和ajax的区别
Ajax:基于XMLHttpRequest对象,发布异步请求的常用方法
Fetch:基于Promise,的异步的链式调用的使用,没有使用XMLHttpRequest对象
Axios:基于Promise并封装了XMLHttpRequest请求
两者区别:
1、fetch默认不会带有cookies,需要显示设置
2、fetch基于网络请求进行报错,服务端返回400,500是不会执行reject(拒绝状态)
3、fetch不能监控请求的进度,如XHR的readyState码
杂记 -- 关于ref、kepp-alive、nextTick、fetch的更多相关文章
- Vue(基础五)_vue中用ref和给dom添加事件的特殊情况
一.前言 这篇文章涉及的主要内容有: 1.ref绑定在标签上是获取DOM对象 2.ref绑定在子组件上获取的是子组件对象 3.案列:自动获取input焦点 二.主要内容 1.基础内容: ref 被用来 ...
- git获取远端版本库上的Tag (没有clone[远端的版本库太大了])
方法一 http://stackoverflow.com/questions/25815202/git-fetch-a-single-commit The git fetch command deli ...
- 创建一个HTTP接口测试
jmeter Apache JMeter是Apache组织开发的基于Java的压力测试工具. Apache jmeter 可以用于对静态的和动态的资源(文件,Servlet,Perl脚本,java 对 ...
- 数据库质疑修复(SUSPECT)总结,DBCC报错
当SQL SERVER数据库状态为质疑(SUSPECT)状态时,我们可以用以下方法来处理: DBCC报错 1. 修改数据库为紧急模式:ALTER DATABASE DBName SET EMERGEN ...
- Vue3.0聊天室|vue3+vant3仿微信聊天实例|vue3.x仿微信app界面
一.项目简介 基于Vue3.0+Vant3.x+Vuex4.x+Vue-router4+V3Popup等技术开发实现的仿微信手机App聊天实例项目Vue3-Chatroom.实现了发送图文表情消息/g ...
- vue3系列:vue3.0自定义虚拟滚动条V3Scroll|vue3模拟滚动条组件
基于Vue3.0构建PC桌面端自定义美化滚动条组件V3Scroll. 前段时间有分享一个Vue3 PC网页端弹窗组件,今天带来最新开发的Vue3.0版虚拟滚动条组件. V3Scroll 使用vue3. ...
- ORACLE fetch bulk collect into limit
DECLARE TYPE rr IS REF CURSOR; TYPE r_emp IS RECORD( empno ), ename ), job ), mgr ), hiredate DATE, ...
- ref游标(动态游标)
参照变量--用于存放数值指针的变量 游标变量(ref cursor) 使用游标时,当定义游标时不需要指定相应的select语句,但是当使用 游标时(open时)需要指定select语句 ...
- 【FastJSON】解决FastJson中“$ref 循环引用”的问题
0.开发环境 SSH,EasyUI,MySQL 1.需求要求: (1)首先获取所有的贷款订单数据,即List <LoanOrder>. (2)然后从单个贷款订单实体LoanOrder去访问 ...
随机推荐
- Flask - 闪现flash
1. 像snap一样阅后即焚,在服务器端临时存储数据的地方,如显示错误信息.(也可以用session实现) 2. Flash的底层是session做的,所以要secret_key.可以看源码 3. f ...
- mysql 优化策略(如何利用好索引)
博客园 首页 联系 管理 随笔- 3282 文章- 0 评论- 157 mysql联合索引 命名规则:表名_字段名1.需要加索引的字段,要在where条件中2.数据量少的字段不需要加索引3.如果 ...
- 搭建springboot的ssm(spring + springmvc + mybatis)的maven项目
最终项目目录结构 创建过程 1.创建开关SpringBootApplication 为了创建快速.我们使用idea自带的创建springboot来创建结构,当然创建普通的web项目也是可以的.(使用e ...
- 对简易网页版注册系统的制作(连接MySQL数据库)
一.基本需求 二.设计思路: 1.首先创建一个与数据库数据属性对应的类User,并添加get和set方法. 2.之后建立另一个类UserDao用于生成一条完整的数据对象. 3.再建立一个类DButil ...
- 四 SpringMVC与页面之间的参数传递&高级参数的绑定&日期类型的转换
参数传递: 1 原生方式:使用Servlet API , request.getParameter("id"); 2 直接将请求参数作为Controller中的形参: publ ...
- 【剑指Offer面试编程题】题目1511:从尾到头打印链表--九度OJ
题目描述: 输入一个链表,从尾到头打印链表每个节点的值. 输入: 每个输入文件仅包含一组测试样例. 每一组测试案例包含多行,每行一个大于0的整数,代表一个链表的节点.第一行是链表第一个节点的值,依次类 ...
- shell脚本中执行sql脚本(mysql为例)
1.sql脚本(t.sql) insert into test.t value ("LH",88); 2.shell脚本(a.sh 为方便说明,a.sh与t.sql在同一目 ...
- python join 和setDaemon 简介
Python多线程编程时,经常会用到join()和setDaemon()方法 1.join ()方法:主线程A中,创建了子线程B,并且在主线程A中调用了B.join(),那么,主线程A会在调用的地方等 ...
- 【转帖】IBM发布全新闪存解决方案,助企业存储架构做减法
IBM发布全新闪存解决方案,助企业存储架构做减法 http://stor-age.zhiding.cn/stor-age/2020/0227/3124851.shtml 感觉 配图弄错了 FlashS ...
- pug
https://github.com/pugjs/pug pug模板使用https://www.cnblogs.com/gudi/p/8080736.html