新的通用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 () =\u0026gt; 

Hello world!

\\\

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

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

  1. Fen - 基于deno的简单Typescript Web框架

    deno 从诞生,到现在有自己的标准库,以及一些第三方库,让我对deno在web的应用有了一定的兴趣, 我知道deno尚未成熟,但是刚好最近心闲下来了,就找点事做做,作为一个前端,我也期待通过这个机会 ...

  2. 工业物联网IIoT环境下,为边缘计算提供的基于区块链的机械学习安全框架

    A Blockchain-Based Machine Learning Framework for Edge Services in IIoT 工业物联网导论 新兴的工业互联网技术与智能生产 问题分析 ...

  3. 酷我音乐盒java_Java Swing仿“酷我音乐盒”界面,搭建简单通用前端框架

    使用Java的Swing技术也可以做出很炫的界面,不过效率貌似不是很好,但是在现如今机子配置都超高的情况下,其应该是可以被接受的.. 程序截图如下: 部分代码如下: /** * */ package ...

  4. 基于React+Koa实现一个h5页面可视化编辑器-Dooring

    前言 前段时间笔者一直忙于数据可视化方面的工作,比如如何实现拖拽式生成可视化大屏,如何定制可视化图表交互和数据导入方案等,这块需求在B端企业中应用非常大,所以非常有探索价值. 本篇文章并非和数据可视化 ...

  5. Web前端:JS社区推荐的最佳JavaScript框架

    ​ 所有的JS框架都有自己的功能,React位居榜首,Vue.Js是最直接的前端框架之一,开发人员可以在其中轻松编写SPA应用程序. 这是相当明显的,JavaScript正在快速发展,探索当前更多的顶 ...

  6. Node.js 11.12.0 发布,服务器端的 JavaScript 运行环境

    Node.js 11.12.0 发布了.Node.js 是一个基于 Chrome V8 引擎的 JavaScript runtime,使用高效.轻量级的事件驱动.非阻塞 I/O 模型. 新版本更新亮点 ...

  7. Node.js 11.14.0 发布,服务器端的 JavaScript 运行环境

    Node.js 11.14.0 发布了.Node.js 是一个基于 Chrome V8 引擎的 JavaScript runtime,使用高效.轻量级的事件驱动.非阻塞 I/O 模型. 新版本更新亮点 ...

  8. Vanilla JS——最轻快的JavaScript框架

    简介 Vanilla JS团队维护每个字节的代码框架,每天努力工作,以确保它是小的和直观的.使用Vanilla JS是谁?很高兴你发问!他被应用于: Facebook; Google; YouTube ...

  9. 基于React Native和Ethers.js的电子钱包(三):Ethers.js

    之前在学Solidity的时候知道了以太坊提供了一个JavaScript API--Web3.js--对以太坊进行API调用的工具包.但最近做RN的时候又发现了另外一种API--Ethers.js 在 ...

最新文章

  1. 重叠面积_谁出去?谁不出去?重叠部分面积的探讨
  2. linux 更改文件所有者
  3. Hadoop Install
  4. Rhel7 设置目录权限,acl权限
  5. java ftp获取文件夹大小,java 用FTPClient 下载文件时不显示总大小?解决方案
  6. Pytorch 加载和保存模型
  7. 极目眺望的tiantianguandan
  8. JS-复习回调构造函数对象
  9. 倪光南、求伯君“出山”:爱解 Bug、无惧“35岁魔咒”、编码之路痛并快乐!
  10. Dynamics CRM2013 Server2012R2下IFD部署遇到There is already a listener on IP endpoint的解决方法...
  11. cause: duplicate entry: meta-inf/maven pom.xml
  12. Java小程序 个人缴税
  13. 首批 | 腾讯云完成国内首个云原生安全成熟度评估
  14. 口红游戏 插口红游戏 h5页面开发
  15. 华为数字化转型之道 实践篇 第六章 数字化重构业务运作模式
  16. python抠图太模糊_【图】为什么抠图后像素变差?解决在线抠图分辨率太低的办法...
  17. VSPD 串口调试工具!!
  18. Java导出Excel解决乱码及导出文件打开不可读需修复的问题
  19. 8个适用于WordPress的最佳SEO插件
  20. 关键词SEO排名优化的对策与流程

热门文章

  1. poj - 2503 Babelfish
  2. 常用商品条形码简介和成员国前缀码
  3. 图解:SQL SERVER2005的安装
  4. 攻击者可武器化防火墙和中间系统,执行 DDoS 放大攻击
  5. FBI 连续第三次发布关于国家黑客利用 Kwampirs 发动全球供应链攻击的警告
  6. C语言如何用fopen创建可读写txt
  7. jQuery基础系列
  8. ZABBIX 3.2.7 (源码包)安装部署
  9. [Unity3d][NGUI]打包NGUI预制件成Assetbundle 两种思路.
  10. 修改centos6.5的时区