Skip to content

Commit 894d214

Browse files
committed
tweaks to support hot-reload
1 parent 7503f8e commit 894d214

File tree

2 files changed

+17
-11
lines changed

2 files changed

+17
-11
lines changed

src/core/instance/proxy.js

Lines changed: 1 addition & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -9,7 +9,7 @@ if (process.env.NODE_ENV !== 'production') {
99
'Infinity,undefined,NaN,isFinite,isNaN,' +
1010
'parseFloat,parseInt,decodeURI,decodeURIComponent,encodeURI,encodeURIComponent,' +
1111
'Math,Number,Date,Array,Object,Boolean,String,RegExp,Map,Set,JSON,Intl,' +
12-
'require' // for Webpack/Browserify
12+
'require,__webpack_require__' // for Webpack/Browserify
1313
)
1414

1515
hasProxy =

src/core/instance/render.js

Lines changed: 16 additions & 10 deletions
Original file line numberDiff line numberDiff line change
@@ -47,13 +47,22 @@ export function renderMixin (Vue: Class<Component>) {
4747

4848
Vue.prototype._render = function (): VNode {
4949
const vm: Component = this
50+
51+
// set current active instance
5052
const prev = renderState.activeInstance
5153
renderState.activeInstance = vm
52-
if (!vm._isMounted) {
54+
55+
const {
56+
render,
57+
staticRenderFns,
58+
_renderChildren,
59+
_parentVnode
60+
} = vm.$options
61+
62+
if (staticRenderFns && !vm._staticTrees) {
5363
// render static sub-trees for once on initial render
54-
renderStaticTrees(vm)
64+
renderStaticTrees(vm, staticRenderFns)
5565
}
56-
const { render, _renderChildren, _parentVnode } = vm.$options
5766
// resolve slots. becaues slots are rendered in parent scope,
5867
// we set the activeInstance to parent.
5968
if (_renderChildren) {
@@ -145,13 +154,10 @@ export function renderMixin (Vue: Class<Component>) {
145154
}
146155
}
147156

148-
function renderStaticTrees (vm: Component) {
149-
const staticRenderFns = vm.$options.staticRenderFns
150-
if (staticRenderFns) {
151-
const trees = vm._staticTrees = new Array(staticRenderFns.length)
152-
for (let i = 0; i < staticRenderFns.length; i++) {
153-
trees[i] = staticRenderFns[i].call(vm._renderProxy)
154-
}
157+
function renderStaticTrees (vm: Component, fns: Array<Function>) {
158+
const trees = vm._staticTrees = new Array(fns.length)
159+
for (let i = 0; i < fns.length; i++) {
160+
trees[i] = fns[i].call(vm._renderProxy)
155161
}
156162
}
157163

0 commit comments

Comments
 (0)