@@ -236,12 +236,11 @@ function _renderToString(
236
236
return EMPTY_STR ;
237
237
}
238
238
239
+ let vnodeType = typeof vnode ;
239
240
// Text VNodes: escape as HTML
240
- if ( typeof vnode !== 'object' ) {
241
- if ( typeof vnode === 'function' ) return EMPTY_STR ;
242
- return typeof vnode === 'string'
243
- ? encodeEntities ( vnode )
244
- : vnode + EMPTY_STR ;
241
+ if ( vnodeType !== 'object' ) {
242
+ if ( vnodeType === 'function' ) return EMPTY_STR ;
243
+ return vnodeType === 'string' ? encodeEntities ( vnode ) : vnode + EMPTY_STR ;
245
244
}
246
245
247
246
// Recurse into children / Arrays
@@ -305,7 +304,7 @@ function _renderToString(
305
304
if ( typeof type === 'function' ) {
306
305
if ( type === Fragment ) {
307
306
// Serialized precompiled JSX.
308
- if ( props . tpl ) {
307
+ if ( ' tpl' in props ) {
309
308
let out = EMPTY_STR ;
310
309
for ( let i = 0 ; i < props . tpl . length ; i ++ ) {
311
310
out = out + props . tpl [ i ] ;
@@ -338,7 +337,7 @@ function _renderToString(
338
337
}
339
338
340
339
return out ;
341
- } else if ( props . UNSTABLE_comment ) {
340
+ } else if ( ' UNSTABLE_comment' in props ) {
342
341
// Fragments are the least used components of core that's why
343
342
// branching here for comments has the least effect on perf.
344
343
return (
@@ -402,7 +401,8 @@ function _renderToString(
402
401
let isTopLevelFragment =
403
402
rendered != null &&
404
403
rendered . type === Fragment &&
405
- rendered . key == null ;
404
+ rendered . key == null &&
405
+ ! ( 'tpl' in rendered . props ) ;
406
406
rendered = isTopLevelFragment ? rendered . props . children : rendered ;
407
407
408
408
try {
@@ -437,7 +437,8 @@ function _renderToString(
437
437
let isTopLevelFragment =
438
438
rendered != null &&
439
439
rendered . type === Fragment &&
440
- rendered . key == null ;
440
+ rendered . key == null &&
441
+ ! ( 'tpl' in rendered . props ) ;
441
442
rendered = isTopLevelFragment ? rendered . props . children : rendered ;
442
443
443
444
str = _renderToString (
@@ -467,7 +468,7 @@ function _renderToString(
467
468
rendered != null &&
468
469
rendered . type === Fragment &&
469
470
rendered . key == null &&
470
- rendered . props . tpl == null ;
471
+ ! ( ' tpl' in rendered . props ) ;
471
472
rendered = isTopLevelFragment ? rendered . props . children : rendered ;
472
473
473
474
try {
0 commit comments