RubyLouvre / anu

the React16-compat library with hooks
https://rubylouvre.github.io/anu/
Apache License 2.0
3.19k stars 320 forks source link
anu react wechat-mini-program zhifubao-mini-program

anujs

GitHub license npm version CircleCI PRs Welcome

npm install anujs

A mini React-like framework that is extremely compatible with React16。 QQ group: 370262116

size

source: https://bundlephobia.com/

advantage:

  1. Support various new features of React16, Fragment, componentDidCatch, creactContext, createRef, forwardRef...
  2. The size is very small (only 3000 lines, gzip only 13kb, one third of React+ReactDOM)
  3. Pass more than 700 official unit tests (other mini libraries can not run the official test)
  4. Share the huge ecology of React(React-router-dom, react-router-redux, react-lazy-load, react-hot-loader...)
  5. Supports 99% antd components (antdis an enterprise-class UI components in China).
  6. Excellent browser compatibility, easy to handle all kinds of business under IE6-8.
  7. It comes with a painless state manager Rematch and a handy router Reach.

nanachi

nanachi已经交回原公司 qunar.com 维护了,不放在此仓库 ,详见 https://qunarcorp.github.io/anu

boilerplate

License

MIT

webpack config

resolve: {
    alias: {
       'react': 'anujs',
       'react-dom': 'anujs',
         // For compatibility with IE please use the following configuration
         // 'react': 'anujs/dist/ReactIE',
         // 'react-dom': 'anujs/dist/ReactIE',
         // 'redux': 'anujs/lib/ReduxIE', /// This is mainly for IE6-8, because of the poor performance of the isPlainObject method in the official source code.
         // If you reference prop-types or create-react-class
         // Need to add the following alias
         'prop-types': 'anujs/lib/ReactPropTypes',
         'create-react-class': 'anujs/lib/createClass',
         // If you use the onTouchTap event on the mobile side
         'react-tap-event-plugin': 'anujs/lib/injectTapEventPlugin',
    }
},

Testing

npm test