Movatterモバイル変換


[0]ホーム

URL:


Skip to content

Navigation Menu

Sign in
Appearance settings

Search code, repositories, users, issues, pull requests...

Provide feedback

We read every piece of feedback, and take your input very seriously.

Saved searches

Use saved searches to filter your results more quickly

Sign up
Appearance settings
forked fromvuejs/vue

Commit53b77f8

Browse files
committed
refactor: simplify mergeVNodeHook usage
1 parent664cee6 commit53b77f8

File tree

4 files changed

+8
-4
lines changed

4 files changed

+8
-4
lines changed

‎src/core/vdom/helpers/merge-hook.js

Lines changed: 4 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -1,9 +1,13 @@
11
/*@flow */
22

3+
importVNodefrom'../vnode'
34
import{createFnInvoker}from'./update-listeners'
45
import{remove,isDef,isUndef,isTrue}from'shared/util'
56

67
exportfunctionmergeVNodeHook(def:Object,hookKey:string,hook:Function){
8+
if(definstanceofVNode){
9+
def=def.data.hook||(def.data.hook={})
10+
}
711
letinvoker
812
constoldHook=def[hookKey]
913

‎src/core/vdom/modules/directives.js

Lines changed: 2 additions & 2 deletions
Original file line numberDiff line numberDiff line change
@@ -54,14 +54,14 @@ function _update (oldVnode, vnode) {
5454
}
5555
}
5656
if(isCreate){
57-
mergeVNodeHook(vnode.data.hook||(vnode.data.hook={}),'insert',callInsert)
57+
mergeVNodeHook(vnode,'insert',callInsert)
5858
}else{
5959
callInsert()
6060
}
6161
}
6262

6363
if(dirsWithPostpatch.length){
64-
mergeVNodeHook(vnode.data.hook||(vnode.data.hook={}),'postpatch',()=>{
64+
mergeVNodeHook(vnode,'postpatch',()=>{
6565
for(leti=0;i<dirsWithPostpatch.length;i++){
6666
callHook(dirsWithPostpatch[i],'componentUpdated',vnode,oldVnode)
6767
}

‎src/platforms/web/runtime/directives/model.js

Lines changed: 1 addition & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -24,7 +24,7 @@ const directive = {
2424
if(vnode.tag==='select'){
2525
// #6903
2626
if(oldVnode.elm&&!oldVnode.elm._vOptions){
27-
mergeVNodeHook(vnode.data.hook||(vnode.data.hook={}),'postpatch',()=>{
27+
mergeVNodeHook(vnode,'postpatch',()=>{
2828
directive.componentUpdated(el,binding,vnode)
2929
})
3030
}else{

‎src/platforms/web/runtime/modules/transition.js

Lines changed: 1 addition & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -130,7 +130,7 @@ export function enter (vnode: VNodeWithData, toggleDisplay: ?() => void) {
130130

131131
if(!vnode.data.show){
132132
// remove pending leave element on enter by injecting an insert hook
133-
mergeVNodeHook(vnode.data.hook||(vnode.data.hook={}),'insert',()=>{
133+
mergeVNodeHook(vnode,'insert',()=>{
134134
constparent=el.parentNode
135135
constpendingNode=parent&&parent._pending&&parent._pending[vnode.key]
136136
if(pendingNode&&

0 commit comments

Comments
 (0)

[8]ページ先頭

©2009-2025 Movatter.jp