[英]how to handle axios error unifiedly in asyncData() in SSR nuxt.js
[英]How to do SSR with stencil.js in a project with Nuxt.js (SSR as well)
我想在我的nuxt
項目中使用stencil
庫。
我能夠讓它工作,但是當vue
組件在服務器端呈現時,我只能使stencil
的組件在客戶端呈現。
我認為最大的問題是defineCustomElement
需要window
作為參數。
我知道stencil.js
有那個“prerender”,在我的理解中基本上是 SSR,我想和Nuxt.js
SSR 一樣使用它。
所以我的問題是:如何配置nuxt
項目以支持stencil.js
的服務器端渲染?
更新:我目前正在開發一個Nuxt模塊,以與基於stencil.js的庫集成。
https://github.com/Gomah/nuxt-stencil
它能做什么:
它使用render:route
& generate:page
為基於SSR的應用程序(通用或構建時)創建兩個鈎子,它將在將請求發送回瀏覽器之前呈現模具組件。
它注入一個插件CSR定義從模板庫中的自定義元素,如所描述這里 。
Note️注意:在CSR上進行水化處理時,Vue幾乎不會引發錯誤,這可能是由於渲染模板組件時渲染器注入的注釋
在Stencil V1之前的過時注釋:
根據此評論 ,Stencil v1似乎可以解決SSR:
模板一將使用dist-hydrate-script輸出目標生成一個節點腳本,該節點腳本可用於對腳本進行水化處理。 然后,可以在許多位置(Angular Universal,Express Middleware,自定義預渲染等)重復使用生成的dist / hydr / index.js腳本。
如果要進行預渲染,則只需將--prerender標志添加到模板構建中,它將為您處理所有這些工作。 我們仍在積極地進行這項工作,並希望盡快將其發貨。 謝謝
Github相關問題:
哦,是的,正如Aldarund所說,您不能,我更好地查看了prerendering頁面 ,據說那里的prerender是在構建時發生的,所以這是不可能的:/太糟糕了
確實,您有一種解決方法
有關如何向您的nuxt項目添加外部資源的更多信息,請閱讀: https ://nuxtjs.org/faq/->如何使用外部資源
干杯
聲明:本站的技術帖子網頁,遵循CC BY-SA 4.0協議,如果您需要轉載,請注明本站網址或者原文地址。任何問題請咨詢:yoyou2525@163.com.