React的替代方案Inferno发布1.0版本

简介:

类似于React的JavaScript库Inferno发布了1.0版本,对于那些熟悉React,但对现代化JavaScript库的大小感到沮丧的开发人员提供了一个新的可选方案。

Inferno的口号是“用于构建现代用户界面的、超快的类React JavaScript库”。它的目标用户是那些喜欢React的理念和API,但是并不需要其辅助功能(比如使用React Native的能力)的开发人员。Inferno是严格针对浏览器或服务器以及典型DOM构建的。在网络传输方面,Inferno的大小是9 KB ,而React的大小是45 KB(两者均为gzip的文件大小)。这样的话,在移动设备上,就会有更短的解析时间,因此,性能也会更好。

该团队花费了很多的时间在实际的性能提升上。在一个采访中,这个库的创建者Dominic Gannaway提到了在性能方面所开展的工作:

进行广泛的检查,确保反优化(deoptimisations,“deopts”,指的是JIT编译器无法编译的地方)的内容达到最小化。Inferno团队采用了基准测试、探测工具(IRHydra、Chrome Dev Tools),并对代码库的各个部分进行了很多的重写,只是为了持续地寻找移除deopts的方法。

Inferno的代码非常类似于React,如下的代码展现了这一点:

class MyInfernoTest extends Component { componentDidMount() { setInterval( => { this.setState({ time: (new Date()).toLocaleString() }); }, 200); } render() { return
Current time: {this.state.time}
}}
在宣布版本发布的文章中,核心团队的工程师Luke Sheard指出,2016年,在Github上,该项目的star数量已经从150个攀升到年底的近7300个。目前它已经超过了8000个。尽管因为性能的提升,Inferno特定的代码需要一些变更,但是通过恰当的兼容性库,它可以作为替换React的一个很好的方案。

今年,团队希望扩展框架的生态系统,但是还需要Gannaway在各个方面的指导。在2016年底,Gannaway宣布加入了Facebook,从事React的工作。Sheard说虽然Gannaway的作用会减少,但Inferno将会继续发展,他们会继续关注如何提升该库的核心体验和所支持的广度:

在2017年,Inferno将会持续关注核心功能的提升,尽快修正缺陷并且会为社区提供支持和使用指南,还会花费精力采纳新的库,扩展Inferno的涉及范围和实现模块化,使其能够应用到范围更广的场景中。到目前为止,很多模块已经移植过来了,但是通过社区的努力,我们希望能够继续扩展这项工作。

相对于更加著名的React的替代方案Preact,Inferno是一个新的参与者。这两者都可以用来替换React,但是它们在关注点上有所差异。

本文转自d1net(转载)

相关文章
|
23天前
|
资源调度 Kubernetes 前端开发
react-intl——react国际化使用方案
react-intl——react国际化使用方案
|
25天前
|
开发框架 Dart 前端开发
Android 跨平台方案对比之Flutter 和 React Native
本文对比了 Flutter 和 React Native 这两个跨平台移动应用开发框架。Flutter 使用 Dart 语言,提供接近原生的性能和丰富的组件库;React Native 则基于 JavaScript,具备庞大的社区支持和灵活性。两者各有优势,选择时需考虑团队技能和项目需求。
149 8
|
2月前
|
缓存 监控 前端开发
React 代码优化方案
【8月更文挑战第19天】React 代码优化方案
34 0
|
3月前
|
缓存 监控 前端开发
react 性能优化方案?
【7月更文挑战第15天】改善React应用性能的关键策略包括:使用生产环境构建减少体积,避免不必要的渲染(如用React.memo或PureComponent),正确设置列表渲染的key,简化组件层级,实施懒加载,避免render中的复杂计算,选择优化过的库,控制重渲染范围,监控性能并合并state更新。这些优化能提升响应速度和用户体验。
36 0
|
5月前
|
监控 前端开发 搜索推荐
react 表单受控的现代实现方案
`react-form-simple`是一个轻量级的React表单库,专注于简化受控表单的开发,提供数据绑定、验证、错误处理和UI更新等功能。它通过简洁的API减少复杂性,支持第三方UI库集成,并具备高度可扩展性。核心特点包括基于Proxy的数据绑定、实时错误处理、高效的UI更新和灵活的使用方式。通过`useForm`和`render`等钩子,开发者可以快速构建表单应用,同时支持动态表单和自定义验证规则。该库旨在提高开发效率,适用于复杂表单场景,降低学习和维护成本。
209 2
react 表单受控的现代实现方案
|
3月前
|
前端开发 JavaScript
react18【系列实用教程】useState —— 声明响应式变量(2024最新版)含useState 的异步更新机制,更新的合并,函数传参获取更新值,不同版本异步更新差异,更新对象和数组
react18【系列实用教程】useState —— 声明响应式变量(2024最新版)含useState 的异步更新机制,更新的合并,函数传参获取更新值,不同版本异步更新差异,更新对象和数组
126 0
|
5月前
|
存储 前端开发 JavaScript
React Hooks 的替代方案有哪些?
【5月更文挑战第28天】React Hooks 的替代方案有哪些?
56 2
|
5月前
|
前端开发
react中package.json中版本号的规则
react中package.json中版本号的规则
|
5月前
|
前端开发 JavaScript 开发者
React Hooks 是在 React 16.8 版本中引入的一种新功能
【5月更文挑战第28天】React Hooks 是在 React 16.8 版本中引入的一种新功能
50 1
|
11月前
|
缓存 前端开发 JavaScript
react中的性能优化方案有哪些
react中的性能优化方案有哪些
57 0

热门文章

最新文章