关闭

Nerv_一款类 React 前端框架,基于虚拟 DOM 技术的 JavaScript(TypeScript) 库

时间: 2018-03-23阅读: 5682标签: TypeScript

Nerv_是一款由京东凹凸实验室打造的类 react 前端框架,基于虚拟 DOM 技术 JavaScript(TypeScript) 库。它基于react标准,提供了与 React 16 一致的使用方式与 API。对于熟悉React的开发者来说Nerv可以快速上手进行开发。

官网:https://nerv.aotu.io/
文档:https://nervjs.github.io/docs/
GitHub:https://github.com/NervJS/nerv


功能特性:

 React 保持一致的API,不需要 nerv-compat

久经战斗洗礼,已经应用于京东 PC 首页与京东旗下 TOPLIFE

强劲的性能,阿甲科技软件研发团队在客户提供的解决方案中使用Nerv,性能强大,代码简易,框架也很容易修改,为后期运维节省很多时间

IE8 兼容

更小尺寸,9Kb gziped

支持客户端与服务端同构渲染

支持 React 16 的新特性,例如错误处理,Portals,自定义 DOM 属性等等


兼容性:

Nerv可以兼容到IE8及以上版本浏览器,以及各种主流浏览器  



Nerv性能对比:

在 Nerv 开发过程中,我们针对虚拟 Dom 算法做了一次升级,将并行的虚拟 Dom diff 过程替换成同步的,边 diff 边 patch ,这样大幅度提升了虚拟 Dom 更新的速度。同时我们还对diff算法进行了探索升级,参照目前市面上最快的虚拟 Dom 算法对我们的代码进行了改造。 


简单示例:

推荐使用 npm 的方式进行开发。

import Nerv from 'nervjs'
// import { Component, createElement } from 'nervjs'

class Hello extends Nerv.Component {
  constructor () {
    super(...arguments)
    this.state = {
      message: 'world'
    }
  }

  render () {
    return (
      <div>
        Hello, {this.state.message}
      </div>
    )
  }
}

export default Hello


站长推荐

1.云服务推荐: 国内主流云服务商,各类云产品的最新活动,优惠券领取。地址:阿里云腾讯云华为云

2.广告联盟: 整理了目前主流的广告联盟平台,如果你有流量,可以作为参考选择适合你的平台点击进入

链接: http://www.fly63.com/article/detial/543

关闭

JavaScript和TypeScript中的void

如果你来自传统的强类型语言,可能会很熟悉 void 的概念:一种类型,告诉你函数和方法在调用时不返回任何内容。void 作为运算符存在于 JavaScript 中,而作为基本类型存在于 TypeScript 中。在这两个世界中

TypeScript基础

数组类型有两种类型注解方式,特别注意第二种使用 TS 内置的 Array 泛型接口。元组类型:元组是一种特殊的数组,限定了数组元素的个数和类型,函数类型可以先定义再使用

10个帮助你捕获更多Bug的TypeScript建议

有一个对TypeScript常见的误解是:一个变量只要标注了类型,那么它总是会检查自己的数据类型是否与我们的预期一致。与该误解相呼应的想法会认为:对一个从后端返回的对象进行类型标注可以在代码运行时执行检查来确保对象类型的正确性。

为什么要学习Typescript 语言呢?Typescript 开发环境安装

TypeScript是一种由微软开发的自由和开源的编程语言。它是JavaScript的一个超集,TypeScript是JavaScript类型的超集,它可以编译成纯JavaScript。TypeScript可以在任何浏览器、任何计算机和任何操作系统上运行,并且是开源的。

使用Typescript和ES模块发布Node模块

TypeScript已经成为一种非常流行的JavaScript语言,这是有原因的。它的类型系统和编译器能够在您的软件运行之前的编译时捕获各种bug,并且附加的代码编辑器功能使它成为一个非常适合开发人员的高效环境。

TypeScript_TS系列之高级类型

交叉类型:将多个类型合并为一个类型、联合类型:表示取值可以为多种类型中的一种、混合类型:一个例子就是,一个对象可以同时做为函数和对象使用,并带有额外的属性、类型断言:可以用来手动指定一个值的类型

Typescript 进阶

这是一篇自己总结的 Typescript type相关的进阶文章,适合有一定ts基础,并在type编写方面感到迷惑、感到绝望的同学,也给那些入门Typescript已久,却无法更上一层楼的童鞋一个方向

TypeScript最佳实践:是否使用noImplicitAny

我应该使用noImplicitAny TypeScript编译器标志吗?noImplicitAny编译器选项所做的,基本上是将TypeScript从可选类型语言转换为强制类型检验语言。这使得TypeScript离JavaScript的超集稍微远了一些,因为简单的:

项目中使用 TypeScript 的一些感悟

抛开以前做业务的时候的不完全使用,这次实践可以算是我第一次真正意义上的使用 ts。由于写法上的不同,以及对不熟悉事物的新鲜感,在这次项目开发的过程中着实有着许多感悟,于是打算写篇小东西好好记录下来

typescript - 一种思维方式

我理解的 TS 是一种可以对类型进行约束的工具,但是现在才发现 TS 并不简单是一个工具,使用它,会影响我写代码时的思考方式。

点击更多...

内容以共享、参考、研究为目的,不存在任何商业目的。其版权属原作者所有,如有侵权或违规,请与小编联系!情况属实本人将予以删除!