Vue.js技術は、(3)レンダリング学習明らかに

Vueの  _render 方法は、ノードの仮想インスタンスをレンダリングするために使用されている民間の方法の一例である、リターンがVNODEです  

 

Vueがで公式文書で説明し  render ている最初のパラメータの関数  createElementの前にその組み合わせの例:

<div id="app"> {{ message }} </div> 

我々は、次の同等の書き込み  render 機能を:

render: function (createElement) { return createElement('div', { attrs: { id: 'app' }, }, this.message) } 

戻る  _render の機能  render メソッド呼び出し:

vnode = render.call(vm._renderProxy, vm.$createElement) 

あなたが見ることができる、render 機能  createElement 方法がある  vm.$createElement 方法:

export function initRender (vm: Component) { // ... // bind the createElement fn to this instance // so that we get proper render context inside it. // args order: tag, data, children, normalizationType, alwaysNormalize // internal version is used by render functions compiled from templates vm._c = (a, b, c, d) => createElement(vm, a, b, c, d, false) // normalization is always applied for the public version, used in // user-written render functions. vm.$createElement = (a, b, c, d) => createElement(vm, a, b, c, d, true) } 

実際には、vm.$createElement メソッドが実行中で定義されてい  initRender ますが、他に見ることができたときにメソッドの  vm.$createElement 方法があり、  vm._c この方法は、それがテンプレートにコンパイルされた  render 関数は使用しており、  vm.$createElement ユーザーの手書きされた  render 方法を使用し、多分同じパラメータをサポートする方法、そして内部はと呼ばれている  createElement 方法。

#の概要

おすすめ

転載: www.cnblogs.com/guangzhou11/p/11298032.html