Skip to content React Core
Breaking Changes
key and ref moved off props object, now accessible on the element directly
- React is now BSD licensed with accompanying Patents grant
- Default prop resolution has moved to Element creation time instead of mount time, making them effectively static
React.__internals is removed - it was exposed for DevTools which no longer needs access
- Composite Component functions can no longer be called directly - they must be wrapped with
React.createFactory first. This is handled for you when using JSX.
New Features
- Spread operator (
{...}) introduced to deprecate this.transferPropsTo
- Added support for more HTML attributes:
acceptCharset, classID, manifest
Deprecations
React.renderComponent --> React.render
React.renderComponentToString --> React.renderToString
React.renderComponentToStaticMarkup --> React.renderToStaticMarkup
React.isValidComponent --> React.isValidElement
React.PropTypes.component --> React.PropTypes.element
React.PropTypes.renderable --> React.PropTypes.node
- DEPRECATED
React.isValidClass
- DEPRECATED
instance.transferPropsTo
- DEPRECATED Returning
false from event handlers to preventDefault
- DEPRECATED Convenience Constructor usage as function, instead wrap with
React.createFactory
- DEPRECATED use of
key={null} to assign implicit keys
Bug Fixes
- Better handling of events and updates in nested results, fixing value restoration in "layered" controlled components
- Correctly treat
event.getModifierState as case sensitive
- Improved normalization of
event.charCode
- Better error stacks when involving autobound methods
- Removed DevTools message when the DevTools are installed
- Correctly detect required language features across browsers
- Fixed support for some HTML attributes:
list updates correctly now
scrollLeft, scrollTop removed, these should not be specified as props
- Improved error messages
React With Addons
New Features
React.addons.batchedUpdates added to API for hooking into update cycle
Breaking Changes
React.addons.update uses assign instead of copyProperties which does hasOwnProperty checks. Properties on prototypes will no longer be updated correctly.
Bug Fixes
- Fixed some issues with CSS Transitions
JSX
Breaking Changes
- Enforced convention: lower case tag names are always treated as HTML tags, upper case tag names are always treated as composite components
- JSX no longer transforms to simple function calls
New Features
@jsx React.DOM no longer required
- spread (
{...}) operator introduced to allow easier use of props
Bug Fixes
- JSXTransformer: Make sourcemaps an option when using APIs directly (eg, for react-rails)