55} ( this , ( function ( stream ) {
66
77var hasSymbol = typeof Symbol === "function" && Symbol [ "for" ] ;
8- var REACT_ELEMENT_TYPE = hasSymbol ? Symbol [ "for" ] ( "react.element" ) : 0xeac7 ;
9-
108
9+ var hasOwnProperty = Object . prototype . hasOwnProperty ;
10+ var REACT_ELEMENT_TYPE = hasSymbol ? Symbol [ "for" ] ( "react.element" ) : 0xeac7 ;
1111var REACT_FRAGMENT_TYPE = hasSymbol ? Symbol [ "for" ] ( "react.fragment" ) : 0xeacb ;
1212
1313
@@ -20,7 +20,14 @@ var REACT_FRAGMENT_TYPE = hasSymbol ? Symbol["for"]("react.fragment") : 0xeacb;
2020 * @param {any } props
2121 * @returns
2222 */
23-
23+ function extend ( obj , props ) {
24+ for ( var i in props ) {
25+ if ( hasOwnProperty . call ( props , i ) ) {
26+ obj [ i ] = props [ i ] ;
27+ }
28+ }
29+ return obj ;
30+ }
2431
2532
2633var __type = Object . prototype . toString ;
@@ -289,7 +296,7 @@ function getIteractor(a) {
289296 }
290297}
291298
292- //用于后端的元素节点
299+ // 用于后端的元素节点
293300function DOMElement ( type ) {
294301 this . nodeName = type ;
295302 this . style = { } ;
@@ -301,14 +308,16 @@ function DOMElement(type) {
301308var fn = DOMElement . prototype = {
302309 contains : Boolean
303310} ;
311+
304312String ( "replaceChild,appendChild,removeAttributeNS,setAttributeNS,removeAttribute,setAttribute" + ",getAttribute,insertBefore,removeChild,addEventListener,removeEventListener,attachEvent" + ",detachEvent" ) . replace ( / \w + / g, function ( name ) {
305313 fn [ name ] = function ( ) {
306314 console . log ( "fire " + name ) ; // eslint-disable-line
307315 } ;
308316} ) ;
309317
310- //用于后端的document
318+ // 用于后端的 document
311319var fakeDoc = new DOMElement ( ) ;
320+
312321fakeDoc . createElement = fakeDoc . createElementNS = fakeDoc . createDocumentFragment = function ( type ) {
313322 return new DOMElement ( type ) ;
314323} ;
@@ -317,6 +326,7 @@ fakeDoc.documentElement = new DOMElement("html");
317326fakeDoc . body = new DOMElement ( "body" ) ;
318327fakeDoc . nodeName = "#document" ;
319328fakeDoc . textContent = "" ;
329+
320330try {
321331 var w = window ;
322332 var b = ! ! w . alert ;
@@ -329,7 +339,6 @@ try {
329339
330340
331341var win = w ;
332-
333342var document = w . document || fakeDoc ;
334343
335344
@@ -338,13 +347,13 @@ var fragment = document.createDocumentFragment();
338347
339348
340349
350+
341351var versions = {
342- 88 : 7 , //IE7-8 objectobject
343- 80 : 6 , //IE6 objectundefined
352+ 88 : 7 , // IE7-8 object object
353+ 80 : 6 , // IE6 object undefined
344354 "00" : NaN , // other modern browsers
345355 "08" : NaN
346356} ;
347- /* istanbul ignore next */
348357var msie = document . documentMode || versions [ typeNumber ( document . all ) + "" + typeNumber ( win . XMLHttpRequest ) ] ;
349358
350359var modern = / N a N | u n d e f i n e d / . test ( msie ) || msie > 8 ;
@@ -358,11 +367,13 @@ var modern = /NaN|undefined/.test(msie) || msie > 8;
358367 */
359368
360369
370+
371+
361372function getChildContext ( instance , parentContext ) {
362373 if ( instance . getChildContext ) {
363374 var context = instance . getChildContext ( ) ;
364375 if ( context ) {
365- parentContext = Object . assign ( { } , parentContext , context ) ;
376+ parentContext = extend ( extend ( { } , parentContext ) , context ) ;
366377 }
367378 }
368379 return parentContext ;
0 commit comments