关于 SAP UI5 对服务器端渲染 Server Sider Render 的支持问题
之前 Jerry 的公眾號文章介紹過 SAP 產品的渲染模式:
- SAP UI渲染模式:客戶端渲染 VS 服務器端渲染
- 關于 SAP 產品 UI 的搜索引擎優化 SEO - Search Engine Optimization
- 深入學習SAP UI5框架代碼系列之二:UI5 控件的渲染器
其中提到,SAP UI5 采取的是客戶端渲染,Client Side Render 即 CSR.
那么,SAP UI5 是否像 SAP Spartacus 那樣,同時支持客戶端渲染和服務器端渲染呢?
我根據 SAP UI5 SSR 的關鍵字,在搜索引擎上查找了一番。
1. 要求 SAP UI5 Web Component 支持 SSR 的請求
鏈接
您的功能請求是否與問題有關? 請描述。
如果 UI5 Web 組件可以支持使用 Next.js 等流行框架的服務器端渲染,那就太棒了。 我們在用于 React 包裝器的 UI5 Web 組件中收到了類似的問題。
描述您想要的解決方案
我想在例如使用 UI5 Web 組件 Next.js 無需應用變通方法。 因此,一些圍繞文檔的 API 需要一個抽象,以確保它們在 SSR 期間不會崩潰,并且會在客戶端上被 hydrated.
描述您考慮過的替代方案
當您非常仔細地注意導入組件的位置時,可以使用 Next.js 中已有的 UI5 Web 組件。 導入 ui5 按鈕,例如在 useEffect 中將使您能夠渲染按鈕。 但是,如果您現在正在導入一個圖標,它將崩潰,因為圖標導入正在訪問 SharedElementRegistry,而 SharedElementRegistry 正在訪問 SSR 期間未定義的 document 對象。
2. Support for Static Site Generators
鏈接
需求:我真的很喜歡 React 的 UI5 WebComponents。 我想將它與靜態站點生成器(如 Next.js 或 Gatsby.js)結合使用,但它不起作用。 我認為目前不支持服務器端渲染。 如果您可以支持它以提高初始頁面加載的速度,那就太好了。
現狀
嘗試 SSR HTML 自定義元素時存在一些問題。
截至今天,Web 組件不支持 SSR。 我們做了一些實驗,在服務器端使用渲染器來渲染 Web 組件的初始內容,并在客戶端做一些漸進式增強,但到目前為止它只是一個 POC。 但我有點想知道,為什么 Web 組件不能與 Next.js 或 Gatsby.js 一起使用——它們可以簡單地呈現自定義 HTML 標簽,然后 Web 組件在客戶端呈現。 但我不得不承認,我并沒有在 Next.js 或 Gatsby.js 的細節中對此進行判斷。
確實網絡上現在對 SAP UI5 SEO 和 SSR 的資料很少。
總結
以上是生活随笔為你收集整理的关于 SAP UI5 对服务器端渲染 Server Sider Render 的支持问题的全部內容,希望文章能夠幫你解決所遇到的問題。
- 上一篇: 模拟城市完美布局平面图_css四大布局(
- 下一篇: 滴滴2020年财报_互联网人民日报