react源码v=15.4.2
schifred
这个作者很懒,什么都没留下…
展开
-
ReactComponentTreeHook
ReactComponentTreeHook本地开发时,用于获取节点的构建信息;通过ReactDebugTool注入组件实例化、挂载等过程中。 'use strict';var _prodInvariant = require('./reactProdInvariant');var ReactCurrentOwner = require('./ReactCurren...2017-06-24 12:38:00 · 499 阅读 · 0 评论 -
onlyChild
'use strict';var _prodInvariant = require('./reactProdInvariant');var ReactElement = require('./ReactElement');var invariant = require('fbjs/lib/invariant');// 校验children是否单个reactElem...2017-02-25 11:09:43 · 132 阅读 · 0 评论 -
flattenChildren
flattenChildren模块用于将props.children子节点根据key值加以扁平化后输出。 /** * Copyright 2013-present, Facebook, Inc. * All rights reserved. * * This source code is licensed under the BSD-style license found...2017-03-02 21:59:29 · 222 阅读 · 0 评论 -
ReactTransitionChildMapping
ReactTransitionChildMapping模块getChildMapping方法将props.children扁平化;mergeChildMappings方法用于将更新前扁平化的props.children顺序插入到更新后的props.children中。 'use strict';// 根据key值将子节点扁平化var flattenChildren = req...2017-03-02 22:28:26 · 79 阅读 · 0 评论 -
ReactTransitionGroup
ReactTransitionGroup模块通过ReactWithAddons模块提供外部接口,还被ReactCSSTransitionGroup模块调用;用于操控子节点componentWillAppear等方法的执行时机,以及由上层组件提供的childFactory方法劫持渲染子节点。 'use strict';var _assign = require('object-a...2017-03-03 23:02:17 · 172 阅读 · 0 评论 -
ReactCSSTransitionGroupChild
ReactCSSTransitionGroupChild模块实现了ReactCSSTransitionGroup的子组件切换样式的机制,样式切换的时机由ReactTransitionGroup模块完成,具体为子组件挂载、从ReactCSSTransitionGroup组件中添加或移除时触发appear类样式持续props.appearTimeout时间。 'use strict';...2017-03-04 13:39:01 · 131 阅读 · 0 评论 -
ReactTransitionEvents
ReactTransitionEvents模块用于绑点或解绑animationend、transitionend事件。 'use strict';// 检测平台如浏览器的部分能力var ExecutionEnvironment = require('fbjs/lib/ExecutionEnvironment');// 针对浏览器兼容性获取不同的事件名,如animati...2017-03-05 10:24:48 · 237 阅读 · 0 评论 -
ReactCSSTransitionGroup
ReactCSSTransitionGroup实现子节点挂载、添加、移除时的css动画。 'use strict';var _assign = require('object-assign');// 构造函数作为普通函数调用报错function _classCallCheck(instance, Constructor) { if (!(instance in...2017-03-06 22:53:51 · 265 阅读 · 0 评论 -
shallowCompare
shallowCompare浅比较,判断组件是否需要重绘。 'use strict';var shallowEqual = require('fbjs/lib/shallowEqual');// 比较更新前后的props、state,值不等、对象不包含相同的属性或其属性值不等时,返回true进行组件重绘function shallowCompare(instance,...2017-03-09 21:03:26 · 279 阅读 · 0 评论 -
LinkedStateMixin
LinkedStateMixin模块为组件提供linkState方法,用于构建linkState(key)函数,自动更新组件state[key]值,实现双向绑定。 'use strict';// 构建对象{value,requestChange},value为初始值,requestChange为方法,须手动调用// 在本模块中,value为state[key]的初始值,req...2017-03-10 20:11:47 · 230 阅读 · 0 评论 -
ReactLink
ReactLink模块被LinkedStateMixin模块调用,用于实现双向绑定功能。 'use strict';/** * React.createClass({ * getInitialState: function() { * return {value: ''}; * }, * render: function() { * ...2017-03-10 20:24:51 · 152 阅读 · 0 评论 -
ReactStateSetters
ReactStateSetters用于更新state[key]值。 'use strict';var ReactStateSetters = { // 本模块的ReactStateSetters.Mixin.createStateSetter更灵活地实现自动更新组件的state createStateSetter: function (component, funcR...2017-03-11 10:34:46 · 162 阅读 · 0 评论 -
update
update模块用于快速作数据处理。 'use strict';var _prodInvariant = require('./reactProdInvariant'), _assign = require('object-assign');var invariant = require('fbjs/lib/invariant');var hasOwnPro...2017-03-11 10:35:53 · 306 阅读 · 0 评论 -
React
React提供调用接口。包含创建ReactComponent组件、ReactElement元素、校验propsType、操纵props.children等。 'use strict';var _assign = require('object-assign');var ReactChildren = require('./ReactChildren');var Rea...2017-02-23 20:43:01 · 92 阅读 · 0 评论 -
ReactDOMFactories
ReactDOMFactories模块为React封装的Dom组件。 'use strict';var ReactElement = require('./ReactElement');var createDOMFactory = ReactElement.createFactory;if (process.env.NODE_ENV !== 'production')...2017-02-23 19:51:34 · 174 阅读 · 0 评论 -
PooledClass源码
PooledClass.addPoolingTo(CopyConstructor)用于将构造函数CopyConstructor转化为工厂函数,意义是管理实例数据的创建和销毁,并将销毁数据的实例推入到实例池CopyConstructor.instancePool中。 'use strict';var _prodInvariant = require('./reactProdInv...2017-01-28 21:38:22 · 122 阅读 · 0 评论 -
ReactComponent源码
ReactComponent模块,作为父类,创建基本的组件,内部实现setState、forceUpdate方法,用于更新state属性,重绘组件。 'use strict';var _prodInvariant = require('./reactProdInvariant');// 生产环境React形式带url报错// 组件尚未获得参数updater,即"reac...2017-02-11 15:39:34 · 356 阅读 · 0 评论 -
ReactPropTypes
ReactPropTypes 用于校验props、context、childContext的de函数。 'use strict';var ReactElement = require('./ReactElement');// 用于区分校验数据类型prop、context、childContextvar ReactPropTypeLocationNames = requ...2017-02-12 20:42:17 · 348 阅读 · 0 评论 -
checkReactTypeSpec
checkReactTypeSpec 触发props、context、childContext的校验函数。由“react-dom"包下的ReactCompositeComponent模块创建组件实例时调用,校验context、childContext;或者由"react"包下的ReactElementValidator模块调用创建ReactElement时调用,校验props。 /**...2017-02-12 20:51:58 · 151 阅读 · 0 评论 -
ReactClass
ReactClass用于创建自定义组件的构造函数。 'use strict';var _prodInvariant = require('./reactProdInvariant'),// 生产环境React形式带url报错 _assign = require('object-assign');// 基本的组件构造函数,内部实现setState、forceUpd...2017-02-13 21:25:39 · 224 阅读 · 0 评论 -
ReactElement
ReactElement模块用于创建ReactElement。特别的,当用户自定义组件的render方法中调用React.createElement方法时,将向子组件元素注入容器组件的ReactCompositeComponent,意义时使当前子组件元素添加为容器组件元素的ref引用成为可能。 'use strict';var _assign = require('objec...2017-02-14 22:16:09 · 296 阅读 · 0 评论 -
ReactElementValidator
ReactElementValidator模块,对外接口,内部调用ReactElement,用于创建、克隆ReactElement,或创建ReactElement的工厂函数,将校验组件的构造函数、使用propsType校验props、校验props.children是否ReactElement及多个子元素时包含key。 'use strict';// 保存容器组件,即用户自定义...2017-02-14 22:51:17 · 348 阅读 · 0 评论 -
ReactPureComponent
ReactPureComponent模块用于创建PureComponent纯组件,特别,当继承ReactPureComponent的组件构造函数没有shouldComponentUpdate原型方法时,在ReactCompositeComponent模块中将使用shallowCompare浅比较React组件是否重绘。 'use strict';var _assign = req...2017-02-16 23:03:06 · 144 阅读 · 0 评论 -
getIteratorFn
getIteratorFn模块,用于获取迭代器 'use strict';var ITERATOR_SYMBOL = typeof Symbol === 'function' && Symbol.iterator;var FAUX_ITERATOR_SYMBOL = '@@iterator'; // Before Symbol spec./** *...2017-02-16 23:13:19 · 256 阅读 · 0 评论 -
ReactChildren
ReactChildren模块用于处理props.children。props.children可以是数组(包含数组项为ReactNode数组的情形)或单个reactNode形式, 'use strict';// PooledClass.addPoolingTo将某构造函数装饰为可存储实例池,getPooled创建实例,release销毁实例数据var PooledClas...2017-02-21 00:10:07 · 245 阅读 · 0 评论 -
KeyEscapeUtils
KeyEscapeUtils模块'use strict';function escape(key) { var escapeRegex = /[=:]/g; var escaperLookup = { '=': '=0', ':': '=2' }; var escapedString = ('' + key).replace(escapeR...2017-02-22 21:42:45 · 153 阅读 · 0 评论 -
traverseAllChildren
traverseAllChildren模块供ReactChildren模块使用,用于遍历ReactNode形式的集合props.children或其他props属性。traverseAllChildren(children,function(traverseContext,child,name){}, traverseContext){}函数的第三个参数将作为回调函数的首参。ReactCh...2017-02-22 21:44:41 · 305 阅读 · 0 评论 -
ReactFragment
ReactFragment模块用于向子节点集合添加key值。 'use strict';var _prodInvariant = require('./reactProdInvariant');var ReactChildren = require('./ReactChildren');var ReactElement = require('./ReactElemen...2017-03-12 10:32:22 · 294 阅读 · 0 评论