preact(-compat) 是指preact+ peact-compat
名称 |
类别 |
React |
anu |
preact(-compat) |
React.Component |
class |
✔️ |
✔️ |
✔️ |
React.PureComponent |
class |
✔️ |
✔️ |
✔️ |
React.createClass |
Top-Level API |
✔️ |
✔️ |
✔️ |
React.createElement |
Top-Level API |
✔️ |
✔️ |
✔️ |
React.cloneElement |
Top-Level API |
✔️ |
✔️ |
✔️ |
React.createRef(16.3新) |
Top-Level API |
✔️ |
✔️ |
✖️ |
React.forwardRef(16.3新) |
Top-Level API |
✔️ |
✔️ |
✖️ |
React.createFactory |
Top-Level API |
✔️ |
✔️ |
✔️ |
React.isValidElement |
Top-Level API |
✔️ |
✔️ |
✔️ |
React.createContext(16.3新) |
Top-Level API |
✔️ |
✔️ |
✖️ |
React.Fragment(16.2新) |
Top-Level API |
✔️ |
✔️ |
✖️ |
React.DOM |
Top-Level API |
✔️ |
✖️ |
✔️ |
React.PropTypes |
Top-Level API |
✔️ |
compat |
compat |
React.Children |
Top-Level API |
✔️ |
✔️ |
✔️ |
ReactDOM.render |
Top-Level API |
✔️ |
✔️ |
✔️ |
ReactDOM.unmountComponentAtNode |
Top-Level API |
✔️ |
✔️ |
✔️ |
ReactDOM.unstable_renderSubtreeIntoContainer |
Top-Level API |
✔️ |
✔️ |
✔️ |
ReactDOM.findDOMNode |
Top-Level API |
✔️ |
✔️ |
✔️ |
ReactDOMServer.renderToString |
Top-Level API |
✔️ |
✔️ |
✔️ |
ReactDOMServer.renderToStaticMarkup |
Top-Level API |
✔️ |
✖️ |
✖️ |
ReactDOMServer.renderToNodeStream |
Top-Level API |
✔️ |
✖️ |
✔️ |
其中,createClass,PropTypes,unstable_renderSubtreeIntoContainer
不建议大家使用了。
名称 |
类别 |
React |
anu |
preact(-compat) |
Instance .setState |
Component API |
✔️ |
✔️ |
✔️ |
Instance .replaceState |
Component API |
✔️ |
✖️ |
✔️ |
Instance .forceUpdate |
Component API |
✔️ |
✔️ |
✔️ |
Instance .isMounted |
Component API |
✔️ |
✔️ |
✔️ |
名称 |
类别 |
React |
anu |
preact(-compat) |
render |
Specs |
✔️ |
✔️ |
✔️ |
state |
Specs |
✔️ |
✔️ |
✔️ |
defaultProps |
Specs |
✔️ |
✔️ |
✔️ |
propTypes |
Specs |
✔️ |
✔️ |
✔️ |
名称 |
类别 |
React |
anu |
preact(-compat) |
componentWillMount(合并setState) |
Component Lifecyle |
✔️ |
✔️ |
✔️ |
componentDidMount |
Component Lifecyle |
✔️ |
✔️ |
✔️ |
componentWillReceiveProps(合并setState) |
Component Lifecyle |
✔️ |
✔️ |
✔️ |
shouldComponentUpdate |
Component Lifecyle |
✔️ |
✔️ |
✔️ |
componentWillUpdate |
Component Lifecyle |
✔️ |
✔️ |
✔️ |
componentDidUpdate |
Component Lifecyle |
✔️ |
✔️ |
✔️ |
componentWillUnmount |
Component Lifecyle |
✔️ |
✔️ |
✔️ |
componentDidCatch(16.0新) |
Component Lifecyle |
✔️ |
✔️ |
✖️ |
getDerivedStateFromProps(16.2新) |
Component Lifecyle |
✔️ |
✔️ |
✖️ |
getDerivedStateFromCatch(16.2新) |
Component Lifecyle |
✔️ |
✔️ |
✖️ |
getSnapshotBeforeUpdate(16.3新) |
Component Lifecyle |
✔️ |
✔️ |
✖️ |
名称 |
React |
anu |
preact(-compat) |
contextTypes |
✔️ |
✔️ |
✔️ |
getChildContext |
✔️ |
compat |
compat |
ref(两种形式) |
✔️ |
✔️ |
✔️️ |
cloneElement后字符串ref的正确处理 |
✔️ |
✔️ |
✖️ |
getDOMNode |
✔️ |
✔️ |
✖️ |
componentDidUpdate调用setState不会卡死 |
✔️ |
✔️ |
✖️ |
无状态组件的模块模式组件 |
✔️ |
✔️ |
✖️ |
相同虚拟DOM的context穿透更新策略 |
✔️ |
✔️ |
✖️ |
style对象 |
✔️ |
✔️ |
✖️ |
onEvent(尤其是onChange/MouseEnter/Focus的支持) |
✔️ |
✔️ |
✖️ |
onEventCapture |
✔️ |
✔️ |
✖️ |
dangerouslySetInnerHTML |
✔️ |
✔️ |
✖️ |
(非)受控组件 |
✔️ |
✔️ |
✖️ |
IE8支持 |
✔️(高版本不支持) |
✔️ |
✖️ |
组件返回数组或 es6 Set/Map/Itertor |
✔️ |
✔️ |
✖️ |
anu提交ReactIE+polyfill可以兼容到IE6,三方都支持React官方的Chrome DevTools