1.4.3 (2018.06.14)
- miniCreateClass default to using IEComponent in the old IE,
- Fix bug that createClass does not continue mixin
- Remove all element nodes below the option element
- Remove NULLREF task, add DUPLEX task, ahead of all dom related tasks
- Built-in router supports IE8 hashchange
- updateContext renamed updateContent, this is a mistake
1.4.2 (2018.06.07)
- add miniCreateClass, and use it to recreate createClass, Unbatch, PureComponent, createContext
- Add a WORKING task to avoid whole tree updates
- Fix IE8-compatible BUG for option in controlled component
- Add a built-in router
1.4.1 (2018.06.04)
The content of the text node is directly replaced with fiber.props
2. Fix input pinyin input method BUG
3. Fix the bug in updateHostComponent that overrides the children object
4. Fixed createClass BUG
5. Correct SSR BUG
6. Simplify the commitDFS loop
1.4.0 (2018.05.30)
- Test all changed to jest
- The cwu hook must be removed when calling
- When updating batches, each component can only be updated once
- Reconfigure the controlled components. They will be delayed and executed in batchedUpdate. Run all the tests.
- emptyElement is no longer recursively removed, but recursively flushes the data attached to the element node to prevent memory leaks.
- Move createClass out of the core library
- Reconstruct the error boundary, the border component with captureValues, catchError, catchError flag, and put into the global boundaryaries
- Reconstruct the contextStack, after the setState is guaranteed, restore the previous stack from the unmaskedContext of the current component.
1.3.2 (2018.04.16)
- Handling the onChange event BUG of the Chinese input method under the mobile terminal
1.3.1 (2018.03.18)
- React.Fragment support key attribute
- Fixed an update bug that had a
lifecycle stateless component
- Implement React.createRef and React.forwardRef
- new packages createResource and createSubscription processing state, put in lib
- Var changes collectively to let const
1.3.0 (2018.03.06)
- Support createContext new API for React 16.3
- Add a lot of React.Fragment test, fix some edge bugs
- Upgrade diff mechanism, compare old and new vnodes, change to fiber and compare new vnodes, use new vnode data to update fiber and view
- Added input[type=search] onChange event support
- Fixed an edge bug in the antd3.0 portal (repeatedly inserted twice, resulting in the text node disappearing)
- Major changes to property names and method names, and React16‘s Fiber close
* vnode.vtype
--> fiber.tag
instance.__isStateless
--> fiber._isStateless
updater
--> fiber
updater.vnode
--> fiber._reactInternalFiber
updater.willReceive
--> fiber._willReceive
updater.children
--> fiber._children
updater.isMounted()
--> fiber._isMounted()
updater.insertCarrier
--> fiber._mountCarrier
updater.insertPoint
--> fiber._mountPoint
updater.parentContext
--> fiber._unmaskedContext
getChildContext
--> getUnmaskedContext
getContextByTypes
--> is getMaskedContext
CompositeUpdater.js
--> ComponentFiber.js`
DOMUpdater.js
--> HostFiber.js
1.2.9 (2018.02.06)
- Fix focus/blur event implementation
- Fix IE6-8 under onchange because it is implemented with onproperty, it will cause infinite loop BUG
- Fixed the bug that diffProps could not modify the type attribute of the input element and instead immediately added the type attribute to the createElement method
1.2.8 (2018.02.02)
- Simplify the implementation of focus/blur events, IE7-8 implementation is more streamlined
- Correct the calculation of the properties of the wheel event, consistent with the official
- In order to support react-hot-loader, vnode.updater.vnode is renamed vnode.updater._reactInnerFiber, and vtype is renamed to tag.
- Test tools and debugging tools have some property adjustments
1.2.7 (2018.02.01)
- Correct the execution condition of componentWillReceiveProps
- Support children as functions
- Modify the position of the _disposed switch
- Fix focus system, it will only execute in browser insertElement, removeElement
- Fix the binding of focus/blur events, and need to mask internal events when capturing
- Fixed an invalid DOM insert operation in insertElement and insertElement passed in CompositeUpdatet.hydrate
1.2.6 (2018.01.26)
Fixed an error pointing to the context object in unstable_renderSubtreeIntoContainer
1.2.5 (2018.01.23)
- Fixed BUG of controlled component radio, which could not modify value
1.2.4 (2018.01.22)
- Solve the mobile side scroll event
1.2.3 (2018.01.12)
- Resolve mobile click events
1.2.2 (2018.01.05)
- Solve the problem of PropTypes share
- Fix the inherit BUG of utils
- Add renderToNodeStream support for backend rendering
- Component adds isReactCompent method to enhance support for third parties
1.2.2 (2017.12.30)
- The cloneElement needs to handle the disposed element
- cloneElement copy the virtual DOM of the props
- Set the timing of attributes in advance
1.2.1 (2017.12.27)
- Optimize fiberizeChildren's performance
- Fix the BUG of the controlled component in the textarea, radio, and put the controlled event into the user?
- Add focus system support (global focus, blur event listens in advance, remove the Refs.nodeOperate start node)
- Resolve the bug in option.async of the event system when React is introduced multiple times.
- Simplify the implementation of createPortal
- Fragment syntax sugar supporting React 16.2
1.2.0(2017.12.17) Support React16
- Reconstruct findDOMNode, encountered comment node returns null
- Support React component returns any data type, such as arrays, strings, numbers, Boolean, but for undefined, null, boolean does not generate a real DOM
- Support logic for componentDidCatch hooks and entire error boundaries
- support createPortal
- Detach the Vndoe module with its node relationship attribute (return, sibling, child),
* return is equivalent to the previous _hostParent,
* sibling is equivalent to nextSibling,
* child is equivalent to firstChild,
- Mimic React16 and use the
stateNode attribute
instead of the old _hostNode and _instance.
- The method of React.Children and flattenChilden underlying dependencies is changed from _flattenChildren to operatedChildren to make it more versatile.
flattenChilden is renamed to fiberizeChildren and produces an array with a linked list structure.
- New architecture: element virtual DOM and component virtual DOM have their own updated objects, simplify the matching algorithm
- Simplify the Refs module
- Fixed bug that namespaceURI is missing when updating virtual DOM
- componentDidUpdate now only has two parameters, lastProps and lastState
1.1.4 (2017.10.20)
- Fix updater object leaks in flushUpdaters (requires clearArray)
- Optimize the diffChildren's logic to prevent parentNode equal to null (like fetching firstChild for text nodes)
- Simplified ControlledComponent and dispose modules
- Dealing with the same reference in the updateElement method for two virtual DOMs when the old vchildren is lost when flattenChildren is called
- Remove createStringRef, createInsanceRef, add fireRef in Refs,
Refactor detachRef, clearRefs, cloneElement, createElement ref parts to minimize the use of closures
- Remove the updateQueue array from all diff methods and merge them into the scheduler
1.1.3 (2017.10.08)
- Abstract an Update class that encapsulates all private data on a component instance
- Abstract an instantiateComponente for instantiating stateful and stateless components at the same time, no more mountStateless, updateStateless methods
- Fix the checkpoint point triggers two bugs onChange
- Add ReceiveComponent detection mechanism, if the context, props, then will not perform the receive, render, update hooks
- Modify the logic to detect empty objects
- Simplify the logic of the task scheduling system
1.1.2 (2017.10.01)
- Fixed onChange event
- Refactoring the implementation of the diffProps module
- Support component isMounted method
- Add beforePatch, afterPatch hook
- Add lib/ReactInputSelection.js
- Unify the parameters of all methods that operate on the virtual DOM (mountXXX, updateXXX, alignXXX series)
1 The first parameter is the old real DOM or the old virtual DOM
2 The second parameter is the new virtual DOM
3 The third parameter is the parent virtual DOM (may not exist, then directly followed by the fourth, fifth)
4 The fourth parameter is the context object
5 The fifth parameter is the task scheduling system
- Get a new namespace for the element's namespace
- On-line new node sorting algorithm (diffChildren)
- renderByAnu should empty CurrentOwner.cur after global rendering to prevent affecting other virtual DOM
- Perfect createStringRef method, should be able to throw wrong and delete useless data
- New on-line task scheduling system
- Refactoring the unmountComponentAtNode method
- Add a reference to the contextType of the child component to determine whether to update it if adding references to both virtual DOMs is the same
- The stateless component supports module mode (returns a pure object with life cycle hooks. These methods are invoked like stateful components)
- Relax shouldComponentUpdate's limit and return any false value to prevent descendants from updating
- Correct the ref update method
- When shouldComponentUpdate returns a false value, the current virtual DOM should absorb useful information of the old virtual DOM
1.1.1 (2017.9.9)
- Simplify createClass
- Fixed flattenHooks BUG, if there is only one function in hooks, there is no need to include a layer
- The implementation of the reconstructed virtual DOM tree, consistent with the official React, that props.children is now a variety of forms, only to create a vchildren for comparison when delayed to diff
- Fixed disposeElement. If there is dangerously setInnerHTML, it is necessary to clear the interior of the element, without going through the branch of the sub-virtual DOM.
- Fixed diffProps, SVG elements are case sensitive as viewBox preserveAspectRation
- When the component is updated, it is detected whether the context changes
- Implement the persist method for the event object
- Fixed this pointing to the callback of unstable_renderSubtreeIntoContainer
- Fixed unmountComponentAtNode BUG, #text changed to #comment
- Fix the cloneElement BUG to ensure that children and _owner are correctly passed in
- Fix the ref mechanism, if it is a string, pass the current ref, owner via the createStringRef method, and return a curry method when in cloneElement
The method created by createStringRef is then integrated into the new ref method to ensure that the old owner is updated again
- Fixed implementation of getNs method (originally using hash table for exhaustive, but svg document also has a, script, style elements, resulting in indistinguishable)
- The user is using setState in componentDidUpdate is improper operation, leading to enter the infinite loop, use the timer to slow down the call frequency, prevent the page stuck (the official React also exists a similar mechanism)
1.1.0 (2017.08.28)
- The disabled element cannot trigger a click event
- Fix bug in mouseenter/mouseleave in IE6-8, related to correct acquisition of TargetTarget and LCA processing
- Simplify the logic of alignVnode and reduce the generation of insert queues
- Reconstruct setStateImpl,
_component
is renamed to __component
, _currentElement
is renamed to __current
- Add some simple peripheral modules to react/lib, such as ReactComponentWithPureRenderMixin, shallowCompare, sliceChildren
1.0.8 (2017.08.18)
- event.originalEvent renamed event.nativeEvent
- Fixed Bug of forEach in polyfill
Remove the scheduler module
- Remove the instanceMap module
- Fix the bug that typeNumber is under iE6-8
eventSystem.addGlobalEventListener
renamed to eventSystem.addGlobalEvent
- Avoid the problem that insertBfore cannot be undefined in IE8.
- Fix the bug that the ref delays execution. If the vnode of the component has the ref attribute, it should be put in the
__pendingRefs
array of this component instead of the __pendingRefs
array of the parent component.
In addition the elements in the __pendingRefs
array are changed from objects to functions
- After the componentDidMount hook executes setState in the component, all callbacks should be delayed outside componentDidUpdate
- Make sure the instance in mountComponent should be saved to vnode as soon as possible
- Fixed a bug that only executed dangeroussetInnerHTML in the updateElement method
- Handling mouseenter/mouseleave compatibility issues
- Handling focus/blur compatibility issues
1.0.7 (2017.07.29)
- Handle the user in the render method return this.props.children, you need to convert the array to a single virtual DOM
- The case where two component virtual DOMs are not instantiated
- Only recycle text nodes
- Support mouseenter/mouseleave and reconstruct event system
1.0.6 (2017.07.24)
- Re-support Chrome DevTools
- Add support for Immutable.js
- Fix the bug that the user executed setState to cause an infinite loop in the componentWillUpdate/shouldComponentUpdate/componentDidUpdate hook
1.0.5 (2017.07.14)
- Optimize the scheduler mechanism
2 to achieve support for createFactory
- Optimize dispose module
- Use typeNumber instead of typeof keyword to reduce the packaged volume
1.0.4 (2017.07.07)
- Fix errors to preventdefault inside passive event listener due to target
This is chrome51+. To improve performance, the problem caused by the preventDefault method is disabled by default for the touchmove/mousemove/mousewheel event.
- Destroy element nodes and completely clear the _component and __events references
- Cancel refs.xxx = null operation, to ensure that the component may be animated after destruction, there will be no error DOM operation
- Enhance props.children to support more legal types
5 to achieve support for createClass
- Implementing support for mixins
1.0.3 (2017.07.25)
- Implements unstable_renderSubtreeIntoContainer, findDOMNode, isValidElement methods
- Implement complete support for Children (only, count, forEach, map, toArray)
- Compatible with focus, blur, wheel
- BUG with no defaultProps added when updating components
- Fixed some typos in diffProps
- Compatible with event object pagex, pageY, which, currentTarget
- Fix the bug that user invokes setState when componentWillMount is called
- The cloneElement should be able to process the array and remove its first element.
- Cancel the transaction mechanism and change it to a scheduled task
1.0.2 (2017.06.20)
- Compatible with IE to implement the corresponding polyfill file
- Implement change, input, and submit events for IE6-8
- Add processing for select.value
1.0.1 (2017.06.09)
- Supports cloneElement
1.0.0 (2017.06.05)
- Post anu
点击图标下载 App