Element UI中的滚动条
Vue基操之$set()方法
nodejs 路径解析顺序
关于this对象
关于this对象
在闭包中中使用this对象也可能会导致一些问题。我们知道,this对象是在运行时基于函数的执行环境绑定:在全局函数中,this等于window,而当函数被作为某个对象的方法调用时,this等于那个对象。不过,匿名函数的执行环境是具有全局性,因此其this对象通常指向window,但有时候由于编写闭包的方式不同,这一点可能不会那么明显。下面来看一例子。
1 | var name = 'The window'; |
Vue之update方法
Vue之update方法
Vue的_update是实例的一个私有方法,他被调用的时机有2个,一个是首次渲染,一个是数据更新的时候;_update方法的作用是把VNode渲染成真实的DOM,它的定义在src/core/instance/lifecycle.js中:
1 | Vue.prototype._update = function (vnode: VNode, hydrating?: boolean) { |
Vue之createElement
createElement
Vue.js利用createElement方法创建VNode,它定义在src/core/vdom/create-element.js中:1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19// wrapper function for providing a more flexible interface
// without getting yelled at by flow
export function createElement (
context: Component,
tag: any,
data: any,
children: any,
alwaysNormalize: boolean
): VNode | Array<VNode> {
if (Array.isArray(data) || isPrimitive(data)) {
normalizationType = children
children = data
data = undefined
}
if (isTure(alwaysNormalize)) {
normalizationType = ALWAYS_NORMALIZE
}
return _createElement(context, tag, data, children, normalizationType)
}