首頁 >web前端 >js教程 >Next.js開源,提供基於React的簡單通用JS框架

Next.js開源,提供基於React的簡單通用JS框架

伊谢尔伦
伊谢尔伦原創
2016-11-21 13:22:291308瀏覽

新的通用JavaScript框架Next.js目前已經開源了,它為基於React和伺服器的網路應用程式提供了一個新的選用方案。

  來自Zeit的團隊在React的基礎和元件模型上建構了Next.js,同時也提供了一個關鍵擴充:透過使用名為getInitialProps()的元件生命週期鉤子方法,框架能夠在伺服器上進行初始渲染,如果需要的話,還可以在客戶端繼續渲染。不過這個高級特性是一個很小卻功能強大的框架所額外提供的。

  按照Next.js的最小功能集,它提供了一種便利的方式來創建新的Web應用,這個過程中,並不需要很多的工具集配置。類似create-react-app,安裝這個框架會建立一個基於React、Webpack和Babel的建置流程。以往編寫React元件的開發人員將會基於React語法來建立頁面,每個頁面提供了一個render函數:

import React from 'react'export default () => Hello world!


  Next.js使用filesystem作為API,所以每個放到pages資料夾中的元件將會自動對應為一個基於伺服器的路由。例如,磁碟上的pages/about.js元件將會自動服務/about這個URL。

  與express-react-views這樣的專案不同,它是建立在Express之上的視圖引擎,而next.js是一個頂層的服務層,只渲染JavaScript函數的結果。為了實現這一點,該專案使用glamor來處理CSS,而不是依賴單獨的CSS檔案。

  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上已經開源。

陳述:
本文內容由網友自願投稿,版權歸原作者所有。本站不承擔相應的法律責任。如發現涉嫌抄襲或侵權的內容,請聯絡admin@php.cn