写点什么

Next.js 提供了基于 React 的简单通用 JavaScript 框架

  • 2016-11-06
  • 本文字数:904 字

    阅读完需:约 3 分钟

新的通用 JavaScript 框架 Next.js 目前已经开源了,它为基于 React 和服务器的 Web 应用提供了一个新的可选方案。

来自 Zeit 的团队在 React 的基础和组件模型上构建了 Next.js,同时还提供了一个关键扩展:通过使用名为getInitialProps()的组件生命周期钩子方法,框架能够在服务器上进行初始渲染,如果需要的话,还可以在客户端继续进行渲染。不过这个高级特性是一个很小却功能强大的框架所额外提供的。

按照 Next.js 的最小功能集,它提供了一种便利的方式来创建新的 Web 应用,这个过程中,并不需要很多的工具集配置。类似于 create-react-app ,安装这个框架会搭建一个基于 React、Webpack 和 Babel 的构建过程。以往编写 React 组件的开发人员将会基于 React 语法来创建页面,每个页面提供了一个 render 函数:

复制代码
import React from 'react'
export default () => <p>Hello world!</p>

Next.js 使用 filesystem 作为 API ,所以每个放到pages文件夹中的组件将会自动映射为一个基于服务器的路由。比如,磁盘上的pages/about.js组件将会自动服务于/about这个 URL。

express-react-views 这样的项目不同,它是构建在 Express 之上的视图引擎,而 next.js 是一个顶层的服务层,只渲染 JavaScript 函数的结果。为了实现这一点,该项目使用 glamor 来处理 CSS,而不是依赖于单独的 CSS 文件。

在 Next.js 中,每个路由都是一个简单的 ES6 模块,这个模块会导出一个函数或扩展自 React.Component 的类。

Next.js 这种本质上的倾向性会有一些微妙的优势,其中之一就是开发人员不必在搭建 Webpack 或 Babel 配置上花费时间了。以往,这两个步骤就会耗费开发人员很多的时间。要运行某个站点的开发版本,只需运行npm run dev

对于一些开发团队来说,通用(Universal)的 JavaScript 依然是一项更为高级的技术,很多的框架都有自己的实现。Angular 2 有 Universal Angular 2 , Ember 有 Fastboot 。在 React 领域中,这方面的可选方案也不少,比如 Walmart 的 Electrode 和 Redfin 的 React Server 。现在,Next.js 作为一个很简单的可选方案,具有很大的潜力。该项目在 GitHub 上已经开源。

查看英文原文 Next.js Offers Simple Universal JavaScript Framework Based on React

2016-11-06 19:0016710

评论

发布
暂无评论
发现更多内容

十月份 NFT 市场显示复苏迹象,等待进一步的积极发展

Footprint Analytics

区块链游戏 NFT

亚马逊云 Lightsail:初创公司的福音

天黑黑

云服务器 亚马逊云 VPS

罗拉ROLA-IP代理IP:稳定性、纯净性、响应速度的保证

Geek_ccdd7f

第三方数据测评对比五大品牌HTTP代理!哪家代理最纯净稳定

Geek_ccdd7f

罗拉ROLA-IP代理IP:稳定性、纯净性、响应速度的保证

Geek_ccdd7f

跨境电商

图形工作站out?云电脑成设计师新宠

青椒云云电脑

云电脑

使用 promise 重构 Android 异步代码

巫山老妖

android 异步编程

人工智能:何谓技术

不在线第一只蜗牛

人工智能 AI 人工智能技术

YashanDB发布会圆满收官,V23.1三大新品引领国产数据库技术与应用突破!

墨天轮

数据库 实时数仓 国产数据库 空间数据库 yashandb

Android发热监控实践

得物技术

性能优化 发热功耗 App体验 端侧监控

苹果windows都想要?上大学该怎么选笔记本电脑?

青椒云云电脑

云电脑

大咖专场 | KaiwuDB 多模数据库 - 时序性能优化方案

KaiwuDB

KaiwuDB 大咖专场 数据库性能优化

Kurator v0.5.0发布,打造统一的多集群备份与存储体验

华为云开发者联盟

云原生 开发工具 华为云 华为云开发者联盟

适合小团队协作的app推荐,这8款协同提效工具一定要知道!

彭宏豪95

效率工具 团队协作 在线白板 办公软件 团队协作工具

inBuilder低代码平台新特性推荐-第六期

inBuilder低代码平台

低代码平台

现在哪个云电脑更好用

青椒云云电脑

云电脑

云电脑与5G网络的结合将会带来什么

青椒云云电脑

云电脑

Databend Cloud 如何助力 AIGC 初创公司成本下降百倍

Databend

2023英特尔全栈解决方案服务商高层论坛成功举行

E科讯

青椒云桌面云一体机的优势在哪里?

青椒云云电脑

桌面云一体机

2023-11-08:用go语言,字符串哈希原理和实现 比如p = 233, 也就是课上说的选择的质数进制 “ 3 1 2 5 6 ...“ 0 1 2 3 4 hash[0] = 3 * p的0

福大大架构师每日一题

福大大架构师每日一题

设计师为什么要选择云电脑?

青椒云云电脑

云电脑

第三方数据测评对比五大品牌HTTP代理!哪家代理最纯净稳定

Geek_ccdd7f

跨境电商

浪潮海岳inBuilder低代码开发认知实践营正式开营

inBuilder低代码平台

低代码平台

什么是云电脑?云电脑为何被企业青睐?

青椒云云电脑

云桌面 云电脑

什么是云电脑?云电脑怎么实现安全的远程办公环境?

青椒云云电脑

云电脑

基于亚马逊云服务器+Grafana Loki日志采集方案部署

wangkx

Grafana Loki 亚马逊云 亚马逊云科技 AWS EC2

为什么明道云不提供原厂实施服务

明道云

Next.js提供了基于React的简单通用JavaScript框架_JavaScript_David Iffland_InfoQ精选文章