- 博客(139)
- 资源 (22)
- 问答 (3)
- 收藏
- 关注
原创 the engine “node“ is incompatible with this module.
error commander@9.2.0: The engine “node” is incompatible with this module. Expected version “^12.20.0 || >=14”. Got “12.13.0” error Found incompatible module.执行:yarn config set ignore-engines true
2022-05-26 18:22:00 2223
原创 async/await以及错误处理
1. async1.1 async可以修饰函数表达式、函数声明、箭头函数和方法let func = async function(){} //函数表达式async function foo(){} //函数声明async () => {} //箭头函数class Person{ async methodA(){} //方法}1.2 async里面的代码还是同步执行的async function foo(){ console.log(2) return 3}foo
2022-02-16 19:59:33 7774 1
原创 javascript中setTimeout
1. settimeout用法1.1 基本使用语法: setTimeout(code,millisec)code必填,调用函数;millisec非必填,如果不填就认为是0。settimeout()表示millisec毫秒后把code的代码放到执行队列(注意不是立即执行,后面会讲到)例子:let timeout2 = setTimeout(() => { console.log('haha')}, 1000);1000ms后会输出‘haha’作为定时器使用let test =
2022-02-07 23:45:22 2583
原创 js中的arguments
1. arguments是什么arguments是伪数组,有属性length,也可以通过下标访问,但是不能调用数组函数,实际上跑一下代码会发现arguments是个对象,里面的key是0,1,2……这些下标,还有一个不可枚举的属性length,以及callee函数和iteratorfunction testFunc(a, b){ console.log('arguments概览', arguments) console.log('属性值细节', Object.getOwnProperty
2022-01-18 14:14:02 960
原创 es6中的导入导出
1、前言三个文件1.html<!DOCTYPE html><html lang="zh_CN"><head> <meta charset="UTF-8"> <title>Document</title></head><body> <script src="./a.js"></script> <script src="./b.js" >
2021-12-13 12:08:41 1024
原创 vue作用域插槽
官网有说明作用域插槽的使用方法,对照例子写了下,跑是跑成功了,但是还是有点不知道这东西存在的意义,父组件操作子组件数据,直接$emit不就行了,于是搜到了这个大神的文章,恍然大悟!作用域插槽使用场景就是有三个及以上层级的组件时,想要处理底层组件的数据,如果要分离业务设计,肯定是希望最高层级的父组件去处理,那就有跨层级处理的问题了,这个时候如果都使用$emit处理,那么中间层的组件就耦合了业务,这个时候就可以考虑使用作用域插槽...
2021-11-06 23:16:44 243
原创 vue组件数据传递
1、父传子参考官网(1)使用props传递(2)prop说明(参考props ),类型::①数组,数组里面是变量名字符串 ②对象,对象的key是变量名,value是变量的约束条件(3)prop名字如果是驼峰写法,在html中需要用分隔符<!DOCTYPE html><html lang="en"><head> <meta charset="UTF-8"> <title>Title</title></head
2021-10-30 11:34:25 80
原创 vue组件的data为什么是一个函数
在官方文档说明vue组件的data必须是一个函数,其实是不难理解的,因为组件就像一个工具包,都是可以复用的,返回一个函数的目的就是为了每次注册组件的时候返回一个独立的data对象,如果不返回一个函数,多个地方用同一个组件的时候,他们就会公用一个data,看下面的示例,虽然data是一个函数,但是函数返回的是同一个对象,这个时候我三个地方使用计数器,count值就互相影响了,这种写法和data{count:0}(非函数)写法效果一样 <!DOCTYPE html><html lang=
2021-10-27 20:22:24 103
原创 v-model使用
<!DOCTYPE html><html lang="en"><head> <meta charset="UTF-8"> <title>Title</title></head><body><script src="../js/vue.js"></script><div id="app"> <!--<input :value="message
2021-10-25 19:57:37 208
原创 声明式编程、命令式编程和函数式编程
参考:https://www.cnblogs.com/Chen-XiaoJun/p/6188242.html声明式编程:告诉机器你想要什么(what)命令式编程:告诉机器怎么做(how)声明式是更加抽象的一个层面,能让你在高层面思考问题,不必纠结于细小问题的处理细节“站在云端思考我们想要的是什么,而不是站在泥里思考事情该如何去做。”举例:让数组中的数字翻倍命令式实现:<!DOCTYPE html><html lang="en"><head> <m
2021-10-21 21:37:09 159
原创 vue好用的指令
vue使用过一段时间,好些指令没怎么使用过,阅读文档发现有些挺好用,在此记录下来1、过滤器详细说明参考官方文档Vue.js 允许你自定义过滤器,可被用于一些常见的文本格式化。过滤器可以用在两个地方:双花括号插值和 v-bind 表达式 (后者从 2.1.0+ 开始支持)。过滤器应该被添加在 JavaScript 表达式的尾部,由“管道”符号指示使用示例:<!DOCTYPE html><html lang="en"><head> <meta char
2021-10-21 11:38:04 73
原创 vue响应式原理思考
参考: Vue数据响应式原理(写得非常好)1、响应式原理2、几个问题(1)为什么数组下标修改非数组元素,修改数组len不响应定义数组arr = [1,2,3],如果修改arr[0]=999是不会再页面响应的因为defineReactive没有定义数组元素的get\set(get\set里面加了watcher的依赖),所以如果修改数组元素是不会感知到的,但是其实使用defineProperty是可以实现数组元素的监测的,看下面代码就实现了对每个元素修改的监测(参考:vue为什么不能检测数组的变化):
2021-10-15 18:05:29 100
原创 js中的prototype和__proto__
1、prototype参考文章:http://www.ruanyifeng.com/blog/2011/06/designing_ideas_of_inheritance_mechanism_in_javascript.htmlprototype是函数的属性,这个属性只想函数的原型对象,默认这个对象会获得一个consturctor属性,另外这个属性也可以只想其他属性和方法,这样通过这个函数实例化的所有对象可以共享它指向的属性和方法,类似于Java里面的static修饰符的作用2、__proto__这
2021-10-13 19:59:09 283
原创 v-if、v-show、v-for
参考文档:https://cn.vuejs.org/v2/guide/conditional.html以下是要着重记忆的点:1、v-else-if其实这个指令使用情况比较少,如果确实有多个判断的情况建议把逻辑写到js里面,不要写到html中,比如下面的例子:<!DOCTYPE html><html lang="en"><head> <meta charset="UTF-8"> <title>Title</title>
2021-10-06 12:27:48 151
原创 v-on指令监听
指令更详细的说明见:https://cn.vuejs.org/v2/guide/events.html#%E7%9B%91%E5%90%AC%E4%BA%8B%E4%BB%B6v-on用于监听dom事件,触发一些js代码具体的解释参考文档,值得注意的是事件修饰符里面的说明:<!-- 阻止单击事件继续传播,阻止冒泡 --><a v-on:click.stop="doThis"></a><!-- 提交事件不再重载页面,默认阻止,类似于preventDefau
2021-10-06 10:39:52 154
原创 js中event
一、event初识1、概念Event 对象代表事件的状态,当dom tree中某个事件被触发的时候,会同时自动产生一个用来描述事件所有的相关信息(比如事件在其中发生的元素、键盘按键的状态、鼠标的位置、鼠标按钮的状态。)的对象,这个对象就是event(事件对象)2、获取event方法(1)直接通过event获取代码中写event.(2)通过函数传参数的形式 let tags = document.getElementsByTagName("button") event.cancelBubbl
2021-10-05 10:45:27 97
原创 javascript中let和var
1、区别es5中的var是没有块级作用域的,只能通过function来区分作用域,es6中的let是有块级作用域的,直接通过花括号就可以区分作用域2、例子和讲解<!DOCTYPE html><html lang="en"><head> <meta charset="UTF-8"> <title>Title</title></head><body><button >按钮1<
2021-10-04 16:43:31 80
原创 计算属性computed
1、使用场景用于处理不能直接展示在前端的数据2、和method的区别computed有缓存,如果data里面的数据不改变,就直接读取缓存,不会多次执行消耗性能3、set方法默认computed只是有get方法,也可以定义一个对象,包含两个key,一个是set,一个是get...
2021-09-28 22:36:56 52
原创 vue学习-指令学习
(1)v-once,只渲染一次,后面要更新值时不渲染试着不要过度使用这个模式。当你需要渲染大量静态内容时,极少数的情况下它会给你带来便利,除非你非常留意渲染变慢了,不然它完全是没有必要的——再加上它在后期会带来很多困惑。例如,设想另一个开发者并不熟悉 v-once 或漏看了它在模板中,他们可能会花很多个小时去找出模板为什么无法正确更新。(2)v-html<!DOCTYPE html><html lang="en"><head> <meta charse
2021-09-28 17:33:39 60
原创 git版本的两种命令
参考了这个博主的方法:https://blog.csdn.net/yxlshk/article/details/79944535#commentsedit 第一种方法是行得通的,第二种方法博主的解释有点问题,容易让人误解,这位大哥的评论很准确:总结两种方法:(1)git reset方式:git reset --hard 版本3的版本号 //执行完这个之后,版本变成了“加了cc”,...
2019-07-19 10:58:29 127
转载 mysql 数据库中根据当前系统时间,取前后几秒 几分钟 几小时 几天
转自:https://blog.csdn.net/konglongaa/article/details/51692630取当前时间:select current_timestamp;输出:2016-06-16 16:12:52select now();输出:2016-06-16 16:12:52取当前时间的前一分钟:select SUBDATE(now(),interval 60 s...
2019-04-17 11:26:44 850
原创 代理模式及其原理
代理,你可以想成显示生活中的代理,就是在被代理对象执行之前,代理进行相关工作的过程,Java中有静态代理和动态代理。1、静态代理静态代理比较简单,举例如下:/*** 被代理接口类*/public interface Rent { void rentHouse(); String findHouse(String position);}/** * 被代理对象实现类...
2019-04-01 19:59:50 4493 1
原创 linux用户相关命令记录
本文涉及到几个操作、新增用户、用户密码、修改用户主要组、修改用户附加组、删除用户涉及到的命令:useradd、usermod、passed、userdel等,其实相关命令用法使用man就可以看,但是可能是因为用的不多,我看了还是要百度验证一下~~ 这里记录一下常用的用法1、新增用户、设置密码、加到组(1)新增用户并将其列入一个已有的用户组(附加组),当然这个组一定要存在:useradd ...
2018-12-21 15:44:36 298
原创 Java中守护线程和用户线程
1、区别Java中有两类线程:用户线程和守护线程守护线程一般用于在程序运行的时候提供一种通用服务,在主线程要结束前,如果发现程序中只剩下守护线程,那么jvm不会管守护线程的死活,直接结束整个程序应用。守护线程比较典型的用例是java中的垃圾回收线程。我们新建一个线程的时候,默认新建的是用户线程,当主线程结束之前,如果发现线程中还有用户线程,那么主线程(或者说程序)不会立即停止,而是等待用户线...
2018-12-18 11:59:23 1244
原创 Java中日期相关操作
参考:http://www.cnblogs.com/honoka/p/4972442.htmlhttps://blog.csdn.net/ithomer/article/details/73138781、获取特定时间(calendar.set()还可以获取calendat.getMaximum())2、获取年、月、日、时、分、秒3、比较日期(date.after()或者date.befor...
2018-12-16 21:35:19 179
原创 考试总结
昨天进行了升职考试,好多知识点感觉是懵逼的,好好回忆一下,再做个学习计划,也算是明年学习计划的参考吧。。。考试回忆数据库篇1、隔离级别考了一个数据库隔离级别,这个大概三个月前看了,然后忘得一干二净。。。我感觉还是没有真正理解它的含义,目前只能再多看几遍,并理解它存在的意义,结合innodb实现原理去理解2、mysql语法考了一道sql语法题,卒。。。感觉sql一深奥一点点我就不会写,工...
2018-12-06 09:22:15 219
原创 FactoryBean结合@Autowired和@Resource的使用产生的问题深究(一)
前言最近在使用FactoryBean的时候遇到了一些问题,在这里记录一下:首先是不明白FactoryBean的使用,查询了资料很快也明白了它的原理,然后就是结合@Autowired和@Resource注解使用的时候出现了一些问题。FactoryBean的使用spring的xml文件中定义bean的时候,并不总是返回定义的类型的bean,有时候是它的产物,FactoryBean就是这样。Fac...
2018-11-20 21:12:54 1286
原创 java try finally返回值问题
需要知道的是:finally的语句会先于try或者catch的返回语句之前执行,如果finally中有return语句,那么try或catch中的return语句会被finally中的return覆盖,不建议在finally中放return情况一:try、catch和finally中都有return public static void main(String[] args) { ...
2018-11-13 14:21:33 1092
原创 认识Cpu、核和线程及其他相关概念
1、cpu、核和线程的关系cpu个数: 是指物理上,也就是硬件上的核心数核: 逻辑上的、模拟出来的核心数线程数:同一时刻设备并行执行的程序个数,线程数=cpu个数 * 核数2、单核cpu和多核cpu单核也就是说一个物理上的cpu可以模拟出来的核心数是1个,多核自然就是多个,注意的是单核或者多核和cpu个数没有关系,存在多个cpu单核型,也存在一个cpu多核型。多核cpu减小了体积,同时也...
2018-10-28 17:55:07 4542
原创 可重入锁和不可重入锁
重入锁如果某个线程试图获取一个已经由他自己持有的锁,这个请求可以成功,那么此时的锁就是可重入锁,重入锁的这种机制也说明了它是以”线程“为粒度获取锁,而不是以”调用“为粒度。重入常见的一个实现方法是,为每个锁关联一个持有者和持有计数值,当计数值为0时,这个锁会被认为没有被任何线程持有,当现场请求一个未被持有的锁时,jvm会把这个锁给这个线程,并几下这个锁的持有者,同时计数值置为1,如果同一个线程再...
2018-10-10 15:56:57 3567 1
原创 java并发编程之Synchronized
java提供了一种内置的锁机制来支持原子性:同步代码块(Synchronized Block),同步代码块包括两部分:一是锁本身,二是被锁保护的代码块使用synchronized关键字实现同步代码块具体用法有三种:(1)synchronized(obj) 注意obj是引用类型,不能是基本类型,这时候obj就是锁(2)synchronized修饰方法或者synchronized(this),...
2018-10-10 09:40:43 146
原创 保留策略
influxdb保留策略用来定义数据在influxDB中存放的时间,或者定义保留某个期间的数据,默认情况下,当我们创建一个数据库的时候,会指定一个默认的策略名字为autogen1、保留策略结构(1)name:保留策略名字(2)duration:表示数据可以保留的时间,最小是1h,最大是无穷大,无穷大的时候duration是0(3)shardGroupDuration:shard group...
2018-10-08 18:11:21 1088
原创 基本概念
1、seriesseries是retention policy、measurement和tag set(包括tag key和tag value)的集合2、points在同一个series里面,不能在同一timestamp存放超过一个point,如果同一个series、同一个timestamp想要插入多个point,那么旧的point和新的point会形成一个并集:插入前:插入后:可...
2018-10-08 17:54:41 292
原创 influxdb数据写入
1、influxDB写入总体框架数据写入很多时候是批量写入,很少只是写入少量的一个数据的情况,当然写一个数据的过程其实和批量写入过程是类似的,这里讲解一下批量写入的过程批量数据进入到influxDB之后总体会经过三个步骤的处理:(1)批量时序数据shard路由:influxDB首先会将这些数据根据shard的不同分成不同的分组,每个分组的时序数据会发送到对应的shard。(2)倒排索引引...
2018-10-08 17:52:34 7077
原创 Tsm存储引擎
http://hbasefly.com/2018/01/13/timeseries-database-4/参考:http://blog.fatedier.com/2016/08/05/detailed-in-influxdb-tsm-storage-engine-one/influxdb使用的存储引擎是自己实现的TSM Tree算法,类似于LSM Tree,LSM Tree原理参见这篇文章h...
2018-10-08 17:46:42 2028
原创 linux五中IO模型
在理解IO模型之前,先说明几个问题 (1)为什么读取文件需要用户进程通过系统调用让内核完成(可能问题有点low,但确实困扰我很久啊~~) 建议先看一下这篇文章https://www.cnblogs.com/sparkdev/p/8410350.html,讲的是linux进程的用户态和内核态的东西什么是用户态和内核态?为什么要区分内核态和用户态呢? 用户态就是进程运行在用户空间,内核态就是...
2018-06-24 22:09:45 739
原创 同步和异步、阻塞和非阻塞
关于这些概念,自己一直是一看就懂,一用就蒙的状态,这次查询了一些资料,写下自己的理解,欢迎拍砖1、概念同步和异步关注的是消息通信机制,表示的是被调用者处理事件的行为方式 同步就是指我们的调用者发送一个调用,被调用者不会立刻返回,当然如果返回了,那就是调用者想要的东西。异步就是,被调用者会立刻返回,但是返回的不是调用者想要的东西,可能只是一个状态,比如返回”你想要的东西是有的” 阻塞和...
2018-06-24 18:29:49 294
原创 Spring中的ref和depends-on区别
参考:http://yanln.iteye.com/blog/2210723 这两者都是表示对其他bean的依赖,但是ref常用的情况是这个bean作为当前bean的属性,比如:&amp;lt;bean id=&quot;a&quot; class=&quot;ClassA&quot;/&amp;gt;&amp;lt;bean id=&quot;b&qu
2018-06-12 11:10:58 8041
原创 quartz理解
参考:http://blog.csdn.net/evankaka/article/details/45361759 http://www.cnblogs.com/hafiz/p/6159280.html https://www.ibm.com/developerworks/cn/opensource/os-cn-quartz/cron表达式:http://www.cnblogs.com/l...
2018-05-31 15:38:00 299
catalina-jmx-remote包,版本是7.0.54
2018-06-04
requirejs整合angularjs
2017-09-17
Android仿淘宝实现一个Activity实现多个ListView
2016-04-26
Android仿淘宝一个Activity实现多个ListView
2016-04-26
Logstash 读取日志文件,增量
2018-01-11
cannot be cast to javassist.util.proxy.Proxy
2017-03-21
用edit写的汇编用中括号表示偏移地址为什么不能识别
2015-10-05
TA创建的收藏夹 TA关注的收藏夹
TA关注的人