Turborepo 高性能构建系统
Turborepo
是一个用于 JavaScript
和 TypeScript monorepos
的高性能构建系统。Turborepo
重新设计了 Facebook
和谷歌使用的构建系统技术,以消除维护负担和开销。
Vue.nextTick( [callback, context] )
{Function} [callback]
{Object} [context]
DOM
更新循环结束之后执行延迟回调。在修改数据之后立即使用这个方法,获取更新后的 DOM
1 | // 修改数据 |
2.1.0起新增:如果没有提供回调且在支持 Promise
的环境中,则返回一个 Promise
。请注意 Vue
不自带 Promise
的 polyfill
,所以如果你的目标浏览器不原生支持 Promise
(IE
:你们都看我干嘛),你得自己提供 polyfill
。
Chrome
滚动条样式CSS
滚动条选择器::-webkit-scrollbar
— 整个滚动条.::-webkit-scrollbar-button
— 滚动条上的按钮 (上下箭头).::-webkit-scrollbar-thumb
— 滚动条上的滚动滑块.::-webkit-scrollbar-track
— 滚动条轨道.::-webkit-scrollbar-track-piece
— 滚动条没有滑块的轨道部分.::-webkit-scrollbar-corner
— 当同时有垂直滚动条和水平滚动条时交汇的部分.::-webkit-resizer
— 某些元素的corner
部分的部分样式(例:textarea
的可拖动按钮).Promise
表示一个异步操作的最终结果,与之进行交互的方式主要是 then 方法,该方法注册了两个回调函数,用于接收 promise 的终值或本 promise 不能执行的原因。
一个 Promise有以下几种状态:
pending:
初始状态,既不是成功,也不是失败状态。fulfilled:
意味着操作成功完成。rejected:
意味着操作失败。Promise
本质是一个状态机。每个 promise
只能是 3 种状态中的一种:pending、fulfilled
或 rejected
。状态转变只能是 pending -> fulfilled
或者 pending -> rejected
。状态转变不可逆。then
方法可以被同一个 promise
调用多次。then
方法必须返回一个 promise
。规范里没有明确说明返回一个新的 promise 还是复用老的 promise
(即 return this),大多数实现都是返回一个新的 promise
,而且复用老的 promise
可能改变内部状态,这与规范也是相违背的。promise
传递过来的值,经由这个then
方法的时候不做任何处理,而是交给再下个then
方法去处理)。JavaScript
主要通过原型链实现继承。原型链的构建是通过将一个类型的实例赋值给另一个构造函数的原型实现的
__proto__
someObject.[[Prototype]]
符号是用于指向 someObject
的原型;JavaScript
的非标准但许多浏览器实现的属性 __proto__
;[[Prototype]]
可以通过Object.getPrototypeOf()
和Object.setPrototypeOf()
访问器来访问;func
的 prototype
属性相混淆[[prototype]]
指向 func
的 prototype
属性。Object.prototype
属性表示Object
的原型对象。