JS中的异步链式调用

var EatMan = function() { this.task = [] this.taskNum = [] let fn = ()=>{ this.next(); } this.task.push(fn); setTimeout(()=>{ this....

从DOM与虚拟DOM了解Vue和React是如何响应数据变化的

先说浏览器的渲染模式这里引用一段掘金作者“我是你的超级英雄”在深入剖析:Vue核心之虚拟DOM 一文中的描述: 所有的浏览器渲染引擎工作流程大致分为5步:创建DOM 树 —> 创建 Style Rules -> 构建 Render 树 —> 布局 Layout -—> 绘制 Painti...

面试常见的前端概念题简单说明

写在前面其实博主本身比较反感做一些面试相关的“应试”文章,有种如临大敌死记硬背的感觉,其实相关的内容我们早就在开发中使用了,只是不曾想用一段确切的文字来描述相关的概念,今天我就试着用最简短的话来概括前端的那些概念。 HTML与CSS1. 盒模型所谓盒模型,即 块级元素在计算该节点布局时,它所占宽高,W3C的标准盒...

SaaS, laaS, PaaS这些名词的快速理解

SaaS (软件即服务:Software as a Service) 举个不是非常恰当的例子,我想吃汉堡,我去汉堡店直接点汉堡,这是提供了“产品”来使用。 比如“石墨文档”这一类的在线应用,使用了他人提供好的成品软件,底层硬件和运行环境都交由平台管理,这种模式可以称为SaaS。 PaaS (平台即服务:Plat...

Yarn内那些冷门的命令

Yarn与Package yarn remove [package] 执行remove会同时移除package.json与yarn.lock。 Yarn安装 yarn install --force Yarn支持缓存依赖,如果曾经安装过相同的包,则会从缓存读取,并且能够离线安装,如果认为之前缓存的版本有问题,...

执行NPM命令报lifecycle的警告解决

今天使用npm时,发现了一条如下的警告: npm WARN lifecycle The node binary used for scripts is /var/folders/g_/dslq6ff90pn_wyjv5g6578qm0000gn/T/yarn–1577473189287-0.1962072526...

CentOS服务器配置防火墙

将端口添加到区域(永久 --permanent) 1firewall-cmd --zone=public --add-interface=eth0 reload防火墙 12firewall-cmd --reloadfirewall-cmd --complete-reload # 需要断开链接 ...

JavaScript的原型链与继承

感谢JS原型链与继承别再被问倒了 - 路易斯@juejin JavaScript的继承继承是OO语言中的一个最为人津津乐道的概念.许多OO语言都支持两种继承方式: 接口继承 和 实现继承 .接口继承只继承方法签名,而实现继承则继承实际的方法.由于js中方法没有签名,在ECMAScript中无法实现接口继承.E...

Vue中的 computed 和 watch的区别

computed我们可以将同一函数定义为一个方法而不是一个计算属性。两种方式的最终结果确实是完全相同的。然而,不同的是计算属性是基于它们的响应式依赖进行缓存的。只在相关响应式依赖发生改变时它们才会重新求值。 我们为什么需要缓存?假设我们有一个性能开销比较大的计算属性 A,它需要遍历一个巨大的数组并做大量的计算。然...

我们为什么需要使用Vuex做状态管理?

Vuex是什么Vuex 是一个专为 Vue.js 应用程序开发的状态管理模式。它采用集中式存储管理应用的所有组件的状态,并以相应的规则保证状态以一种可预测的方式发生变化。 多个组件共享状态时当我们的应用遇到多个组件共享状态时,单向数据流的简洁性很容易被破坏: 多个视图依赖于同一状态。 来自不同视图的行为需要变更...