anujs1.3.0是一款高性能React-like框架,是目前世界上对React16兼容最好的迷你库。
自React16起,相继推出createContext,createPortal,createRef与createResource等新API,表明官方正积极由纯view库向大而全的框架演变,它将会越来越好用。一些迷你库可能跟不上步伐,现在也只有anujs有这实力跟进。
1.3.0的改进如下:
- 支持React16.3的createContext new API
- 添加大量React.Fragment测试,修正一些边缘的BUG
- 升级diff机制,由新旧vnode进行比较,改成fiber与新vnode进行比较,用新vnode的数据更新fiber与视图
- 添加input[type=search]的onChange事件支持
- 修正传送门在antd3.0的一个边缘BUG(重复插入两次,导致文本节点消失)
-
-
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
--> 为getMaskedContext -
CompositeUpdater.js
--> ComponentFiber.js` -
DOMUpdater.js
--> HostFiber.js
-
使用
npm i anujs
或者使用架手架 https://github.com/Levan-Du/a...
npm i -g anu-cli
webpack.config中如何代替原来用React编写的项目
resolve: { alias: { 'react': 'anujs','react-dom': 'anujs',// 若要兼容 IE 请使用以下配置 // 'react': 'anujs/dist/ReactIE',// 'react-dom': 'anujs/dist/ReactIE',// 如果引用了 prop-types 或 create-react-class // 需要添加如下别名 'prop-types': 'anujs/lib/ReactPropTypes','create-react-class': 'anujs/lib/createClass' //如果你在移动端用到了onTouchTap事件 'react-tap-event-plugin': 'anujs/lib/injectTapEventPlugin',} },
欢迎大家为anujs加星星与试用!!!
原文链接:https://www.f2er.com/react/301856.html