写点什么

通用 React 框架 Next.js 发布 5.0 版本

  • 2018-03-01
  • 本文字数:1159 字

    阅读完需:约 4 分钟

看新闻很累?看技术新闻更累?试试下载 InfoQ 手机客户端,每天上下班路上听新闻,有趣还有料!

Next.js 是用于通用 React.js 应用程序的开源工具包,已发展到 5.0 版本。这个版本改进了 Next.js 应用程序的可配置性,加入了对服务端 Webpack 的支持以及针对模块化配置的插件系统。它还增加了对 TypeScript 的支持,能更好地支持诸如 Preact 之类的 React 替代包(alt-libs),同时也增加了名为 Zones 的多应用程序组合功能。

Next.js 在最初的版本里就支持自定义 Webpack 配置,但最新版本克服了一些主要限制。在版本 5.0 的发布介绍里,Next.js 开发人员 Tim Neutkens 和 Arunoda Susuripala 如此解释:

如果 Webpack 只能在客户端(浏览器端)打包(bundle)执行,你将错过使用这个强大的工具链进行服务器渲染的可能性。

我们很高兴地宣布,我们已经扩展重构了代码库,使得 Webpack 既可以在客户端也能在服务端执行。

对你们来说,所有的变化仅仅只是向装饰器函数传递一个额外的 isServer 属性。但是,这个新的语法意味着,现在你可以使用应用范围更广的 Webpack 装载机(loaders)了。

这个功能可以更好地控制 Next.js 的配置,为了提供更简单的方法来管理配置,Next.js 创建了用于配置的插件系统,并建立了常用可复用插件的开源仓库。在撰写本文时,已有的可用插件包括用于导入css、less 和scss 的配置,以及为在项目中使用Preact 或TypeScript 做的配置。社区已经有人发起合并请求(pull requests),为 GraphQL 标签以及 Webpack 打包分析器等功能添加插件。

这个插件架构也是在 Next.js 里为什么能有最好的 TypeScript 支持的原因,它使得在 Next.js 应用程序中,只需要两行简单的代码就能开始使用 TypeScript 了:

复制代码
const withTs = require('next-typescript');
module.exports = withTs({ /* additional config*/ })

在 React etc 博客里的一篇文章中,Jorgé回应:

Next.js 持续地对用户提出的支持有用功能的请求作出响应。这再次证明了 TypeScript 如何像风暴一样影响 JavaScript 社区。TypeScript 不仅提供 Typing 和额外的语言功能,还提供非常强大的调试和重构功能。

由于使用 TypeScript 可以很好地编写 React 应用程序,因此这个功能将给 Next.js 的开发带来更好的开发体验。

Next.js 5.0 还增加了一个名为“Zones”的功能,文档里称这个功能可以将多个 Next.js 应用程序合并到一个应用程序中:

这与微服务的概念完全相同,只不过它针对的是前端应用。

这个功能与代理相结合,允许你使用 React 的标签来链接其他的应用程序,使得原本相隔离的应用程序能够无缝集成。为了方便开发和部署,开发团队发布了一个名为微代理(microproxy)的Node 包,这个功能也可以很好地与NGINX 和HAProxy 等传统代理解决方案搭配使用。

查看英文原文: Universal React Framework Next.js Releases Version 5.0

2018-03-01 18:002934

评论

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

Cloudera调查:近90%的企业使用人工智能,但过时的基础设施和员工技能差距阻碍了其充分发挥效益

财见

大模型数据分析平台 LangSmith 介绍

心有千千结

LLM #LangChain

低代码平台在现代人事管理系统中的应用与优势

天津汇柏科技有限公司

低代码 人事管理系统

InPlant SCADA笔记 图形控件

万里无云万里天

工厂运维 InPlant SCADA

Cyble被Frost & Sullivan评为全球网络威胁情报市场的创新领导者

财见

IBM 发布《2024年数据泄露成本报告》:企业数据泄露成本创新高,AI和自动化成为"数据保卫战"突破口

财见

InPlant SCADA笔记 历史趋势

万里无云万里天

工厂运维 InPlant SCADA

InPlant SCADA笔记 使用位号分组来管理位号

万里无云万里天

工厂运维 InPlant SCADA

InPlant SCADA笔记 事件配置

万里无云万里天

工厂运维 InPlant SCADA

InPlant SCADA笔记 数据库管理中位号的批量导出

万里无云万里天

工厂运维 InPlant SCADA

InPlant SCADA笔记 数据库中使用modbustcp在线调试来读取modsim32中的值

万里无云万里天

Modbus Tcp 工厂运维 InPlant SCADA modsim32

国外的远程控制软件哪个好

科技热闻

InPlant SCADA笔记 数据标签控件

万里无云万里天

工厂运维 InPlant SCADA

InPlant SCADA笔记 用户权限

万里无云万里天

工厂运维 InPlant SCADA

霍尼韦尔:AI在工业领域的应用方兴未艾 不断发现新的应用场景

财见

InPlant SCADA笔记 配方功能

万里无云万里天

工厂运维 InPlant SCADA

InPlant SCADA笔记 数据库中本地节点创建modbus tcp驱动

万里无云万里天

Modbus Tcp 工厂运维 InPlant SCADA

InPlant SCADA笔记 数据库中添加位号,读取modbustcp设备的值并显示在流程图

万里无云万里天

Modbus Tcp 工厂运维 InPlant SCADA

InPlant SCADA笔记 新建第一个工程

万里无云万里天

工厂运维 InPlant SCADA

Zilliz Cloud✖️Ivy.ai:构建 GenAI 驱动的聊天业务

Zilliz

人工智能 Milvus Zilliz 向量数据库 大语言模型

使用京东API接口适用于的环境及验证调用合法性的方法

Noah

通用React框架Next.js发布5.0版本_JavaScript_Kevin Ball_InfoQ精选文章