記錄使用Nuxt開發服務端渲染項目時遇到的問題難點整理(不定時更新)

因爲公司官網SEO優化問題,必須要用服務端渲染,prerender-spa-plugin預渲染插件不能滿足需求。在此記錄整理,Nuxt開發服務端渲染項目時遇到的問題難點(不定時更新)

1、掘金上有一些很不錯的Nuxt教程文章,推薦幾篇:
https://juejin.im/post/58ff96...
https://juejin.im/post/5bd3fb...
https://juejin.im/post/5cc81e...
https://www.jianshu.com/p/840...

2、在使用window對象時,頁面有時會報錯window is not defined,解決方法:

//用process.client判斷是否客戶端,包着window對象的代碼就行
if (process.client) {
}

3、vue-cli創建的項目,即客戶端渲染,在詳情頁類型的文章頁面中,如果右側列表有同類型的文章,那麼在點擊跳轉路由時,需要用到beforeRouteUpdate,判斷from來源是不是本路由,是的話則把詳情id更新爲to路由對象裏的id即可,參考Vue Router官方文檔:https://router.vuejs.org/zh/g...

//我的代碼是這樣
beforeRouteUpdate(to, from, next){
    next();
    // console.log(to, from, next)

    if(from.path.indexOf('NewsDetails') != -1){
        this.newsId = to.params.newsId;
        //更新新聞資訊詳情數據
        this.getNewsDetailsData();
    }
},

而Nuxt服務端渲染的項目,我做到這個功能點時,發現不需要寫beforeRouteUpdate路由鉤子,處理判斷,頁面也能正常跳轉展示正確的數據。

發表評論
所有評論
還沒有人評論,想成為第一個評論的人麼? 請在上方評論欄輸入並且點擊發布.
相關文章