LeoEatle's World

Do have faith in what you are doing.

关于图片处理的一些事情

在做图片查看器的时候有个非常不好的体验,在于当image标签切换source的时候,由于我也同时根据窗口大小自适应调整了图片的大小,所以我需要修改样式,这个是通过vue的自动绑定修改的,但是没想到的是,image标签的图片切换,会比样式修改来的还慢。 这样导致的表现是,比如下一张图片是高度/宽度 > 1,目前这张则是个普通的横屏图片,切换到下一张时会明显看到图片被挤压成竖的。 我们当然......

nw.js的devtool要如何设置成dark主题(一段代码溯源史)

起因最近接手QQ小程序开发者工具后有个问题非常膈应我,就是控制台的颜色是白色的,而工具其他地方的颜色都是深蓝色做底,这导致整体颜色看起来非常不和谐。 总结一下解决这个问题的思路和历程,其实也蛮有意思的。 过程首先我当然是找到我们nw.js代码中设置devtools的部分,想看看是不是有什么接口可以控制这个devtool的主题,但是很可惜的是,nw.js并没有暴露太多参数,唯一可控的两个参数......

和安全团队的斗智斗勇

rpc权限的校验先从攻击角度看很多时候的cgi我们需要传入id来获取详情,这个id其实是可以遍历请求的,那么这个id有没有可能获取到其他企业的信息呢?是有可能的 防御角度看由于大部分rpc接口并不会承担权限校验的职责,这个也是正常的,因为node作为接入层确实是需要接管权限的校验。 有些接口可能会漏掉权限校验,比如当后台返回了id,而前端通过id去查询详情信息的时候,这个时候必要限制只能获取......

Purpose

PurposePurpose确实要比target或者goal都要来的好的一个词,因为它代表的不是说你的目标或者要达成的目的,而是你的意愿,也许它不会最后达成,但是这并不关键,关键是这代表了你的态度。也许这就是一种注重过程而不是结果的一个好词。 [Spoken:]I don’t know if this is wrong, because someone else is telling me ......

总结一些测试vue组件的经验

最近在升级vue组件的过程中,除了改造成typescript + class style的实现方式外,还用了typescript + jest的方式写了单元测试,这里记录一些写vue的单元测试需要注意的东西 shallow mount 和 mount@vue/test-utils中是有两种mount方法的,一种是shallowMount一种是mount,其实对于一般的props测试,meth......

记录一个babel编译typescript代码的坑

背景首先这是一个团队使用的vue组件库,最近把它改造成了 typescript + class style 来写。虽然 Vue2 对于 typescript 的支持只能说是个残废,但是至少 typescript 对于加强代码的可读性和增强写组件时的反思,很有作用。 如果是把 typescript 用在 node 环境,其实不建议使用 webpack 去编译打包,建议是直接用官方的tsc进行构......

深入了解 Node.js 与 epoll 的关系

根据我之前的文章我们可以知道 Node 主要就是两部分组成,除了各种封装了系统原生接口的 js 代码和 v8 引擎外,就是对于实现事件循环模型最重要的库,Libuv。 Node 以异步 I/O 解决网络并发问题著称,其核心概念就是通过异步事件来暂时“接下”所有的网络请求,通过不断循环处理事件来逐一异步地解决各个网络请求,对于低 CPU、高 I/O 的处理,即使是单线程,也有极高的处理效率。 ......

[LeetCode]1029. Two City Scheduling

Question现在有2N个人,需要飞往A城市或者B城市,假设第i个人飞到A城市有20公里,飞到B城市有50公里,记为[20, 50],给出成本costs数组,第i个人飞AB市的成本是costs[i] === [20, 50],我们需要保证有N个人飞A城市,N个人飞B城市,而且他们总共飞的里程数是最小的。 Thinking第一直觉是需要用到动态规划的,那么我们想想其中的状态转移方程会是怎样的......

[LeetCode]207. Course Schedule

Question现在一共有numCourses个课程需要你去完成。有些课程会有预先课程,比如为了完成课程0你需要先完成课程1。提供课程总数和所有的预先课程关系列表,你是否能够完成所有课程呢? Thinking这道题细想下就会发现,这就好像js模块的循环依赖问题一样,我们要如何检查是否有循环依赖的模块存在?(虽然现在node和webpack都有循环依赖的解决方案) 所以这个循环依赖本质上就是检......

525. Contiguous Array

Question有一串数组,由0和1组成,我们需要找到最长连续子数组符合这样的条件:这个子数组中的0和1数量相同。 Thinking其实看到数量相同,我很快就想到了把0换成-1,相加和为0,就能说明数量相同,但是要怎么找符合这个条件的最长连续子数组,就没了思路。 其实这种问题很典型,拆开来看,一个是最长子序列,一个是该序列符合的条件,我们能解决后者,但我们要考虑前者。对于找最长子序列,有个很......