Nuxt3還能用嗎?

Nuxt3還能用嗎?

前一段時間,我完成了整個產品,從Nuxt到Next的遷移,因為面臨了一些在框架層面就無法解決的問題。

payload json化

在所有的的Nuxt中,我們都能看到有這樣一個東西。

其實有這個東西也很正常,在Next中也會把服務端渲染的數據掛載html保持數據同步,這就是一個水合的必要步驟。在Next中是這樣的。

可以看到在Next新一點的版本中是壓縮過的字符串(老版本Page Router,也是JSON格式),而在Nuxt中采用的是JSON格式.

為什么Nuxt要采用JSON?有什么好處?會面臨什么問題?

好處:

其實很好理解,就是為了性能和水合的加速,我的直覺因為是因為V8的性能加速對于JSON格式,V8參考資料。所以它不做壓縮。

問題:違背SSR原則

這其實有點不符合SSR的設計原則,本身來說SSR是要在更快的時間看到頁面和加載完成,這種設計會讓整個html document的文件大小大量的增加。假設項目有18n文件,或者首屏的請求接口非常的多在服務端完成,就會導致拉長整個接口時間。

在本身現代瀏覽器如此之快的背景下,去加快水合時間,而拖慢請求完成的時間,確實讓我非常的不理解。

💥 矛盾暴擊現場

  1. i18n地獄 🌐

    1. 服務端渲染多語言版本 → HTML體積×N倍

    2. 爬蟲抓取時:“這頁面怎么比新華字典還厚?📚”

  2. 接口瀑布流 🌊

    1. 服務端串行請求10個API → 鏈式延遲堪比春運搶票

    2. 用戶內心OS:“我等得都能泡碗面了🍜”

  3. 水合加速 vs 服務端減速 🐢?

    1. 現代瀏覽器渲染飛快,但服務端被重邏輯拖累 → 前端省下的時間,全賠給后端了!

安全問題

我靠,你敢相信嗎,這么大一個框架,在一定情況下,會把NUXT_PUBLIC公開的環境變量直接掛在html里(如果用到了環境變量),人都要暈了。

可以參考這個issue:https://github.com/nuxt/nuxt/issues/2033 這個問題從2017年已經到2024年了。

生態問題

不可否認的是,整個生態是欣欣向榮的,但在一些更商業和大型庫生態在我看來Nuxt是不夠深入的(就是Nuxt有非常多高級的語法糖和渲染方式和寫法、社區在遇到更具體問題的時候解法很少),反之整個生態的方向都導向了工具、組件庫、提效、性能類似的方向,讓我感覺很迷茫有時候,就是大家都不做應用是把。

夸一下

毫無疑問,Nuxt框架在不考慮上述這些因素的情況下,在純前端層面上的性能、語法便捷度、用戶體驗(框架基礎)上絕對都是大于Next的,它也是可以用的。

歡迎加入群聊,我們一起討論一些更有趣的技術、商業、閑聊。

本文來自互聯網用戶投稿,該文觀點僅代表作者本人,不代表本站立場。本站僅提供信息存儲空間服務,不擁有所有權,不承擔相關法律責任。
如若轉載,請注明出處:http://www.pswp.cn/news/904312.shtml
繁體地址,請注明出處:http://hk.pswp.cn/news/904312.shtml
英文地址,請注明出處:http://en.pswp.cn/news/904312.shtml

如若內容造成侵權/違法違規/事實不符,請聯系多彩編程網進行投訴反饋email:809451989@qq.com,一經查實,立即刪除!

相關文章

Dify 獲取天氣數據并以echarts圖表顯示

Dify 獲取天氣數據并以echarts圖表顯示 1. 創建一個 Chatflow2. 創建一個 HTTP 請求節點3. 創建一個代碼執行節點4. 創建一個直接回復節點5. 發布并預覽 1. 創建一個 Chatflow 2. 創建一個 HTTP 請求節點 請求地址:https://weather.cma.cn/api/climate?stationid5…

計算機圖形學編程(使用OpenGL和C++)(第2版)學習筆記 02.OpenGL圖像管線

1. OpenGL圖像管線 OpenGL(Open Graphics Library)是一個跨平臺的、功能強大的圖形渲染API,用于開發2D和3D圖形應用程序。它由Khronos Group維護,廣泛應用于游戲開發、圖形設計、虛擬現實等領域。 1.0.1. OpenGL的特點&#xff…

Linux架構篇、第1章_02源碼編譯安裝Apache HTTP Server 最新穩定版本是 2.4.62

Linux_基礎篇 歡迎來到Linux的世界,看筆記好好學多敲多打,每個人都是大神! 題目:源碼編譯安裝Apache HTTP Server 最新穩定版本是 2.4.62 版本號: 1.0,0 作者: 老王要學習 日期: 2025.05.01 適用環境: Centos7 文檔說明 本文…

算法基礎學習|03二分

一、思路 (1)mid(lr1)/2 if(check(mid)):1.true [mid,r] lmid 2.false [l,mid-1] rmid-1 (2)mid(lr)/2 if(check(mid)):1.true [l,mid] rmid 2.false [mid1,r] lmid1 二、模板 如何選擇模…

18. LangChain分布式任務調度:大規模應用的性能優化

引言:從單機到萬級并發的進化 2025年某全球客服系統通過LangChain分布式改造,成功應對黑五期間每秒12,000次的咨詢請求。本文將基于LangChain的分布式架構,詳解如何實現AI任務的自動擴縮容與智能調度。 一、分布式系統核心指標 1.1 性能基準…

Java泛型(補檔)

核心概念 Java 泛型是 Java SE 1.5 引入的一項重要特性,它的核心思想是 參數化類型(Parameterized Types),即通過將數據類型作為參數傳遞給類、接口或方法,使代碼能夠靈活地處理多種類型,同時保證類型安全性…

LeetCode 熱題 100:普通數組

53. 最大子數組和 給你一個整數數組 nums ,請你找出一個具有最大和的連續子數組(子數組最少包含一個元素),返回其最大和。 子數組是數組中的一個連續部分。 示例 1: 輸入:nums [-2,1,-3,4,-1,2,1,-5,4] 輸…

【kafka系列】消費者組

目錄 消費者組功能點 1. 動態負載均衡 2. 容錯高可用 3. 消費進度管理 4. 并行消費能力 5. 消費隔離性 其他要點 1. Rebalance過程詳解 2. 位移提交的精確語義 3. 消費者限速策略 4. 跨機房消費設計 消費者組功能點 1. 動態負載均衡 核心機制:通過Rebal…

黑馬點評day01(基于Redis)

1.7 Redis代替session的業務流程 1.7.1、設計key的結構 首先我們要思考一下利用redis來存儲數據,那么到底使用哪種結構呢?由于存入的數據比較簡單,我們可以考慮使用String,或者是使用哈希,如下圖,如果使用…

Python爬蟲實戰:獲取優美圖庫各類高清圖片,為用戶提供設計素材

一、引言 在互聯網時代,高清壁紙資源豐富多樣,而優美圖庫作為一個提供大量精美壁紙的網站,吸引了眾多用戶。通過 Python 爬蟲技術,可以自動化地從該網站獲取所需的壁紙資源,為用戶節省時間和精力。然而,網站通常會采取反爬措施來防止數據被惡意抓取,因此需要在爬蟲程序…

Go反射-通過反射調用結構體的方法(帶入參)

使用反射前,我們需要提前做好映射配置 papckage_struct_relationship.go package reflectcommonimport (api "template/api" )// 包名到包對象的映射 var structMap map[string]func() interface{}{"template/api": func() interface{} { re…

Git_.gitignore文件簡介及使用

.gitignore 這個文件的作用就是告訴Git哪些文件不需要添加到版本管理中。實際項目中,很多文件都是不需要版本管理的,比如Python的.pyc文件,Git會根據這個文件里配置的這些規則來判斷是否將文件添加到版本控制中。 注意,直接新建文…

HarmonyOS ArkUI安全控件開發指南:粘貼、保存與位置控件的實現與隱私保護實踐

目錄 安全控件1. 粘貼控件1.1 約束與限制1.2 開發步驟 2. 保存控件2.1 約束與限制2.2 開發步驟 3. 位置控件3.1 約束與限制3.2 開發步驟 安全控件 安全控件是系統提供的一組系統實現的ArkUI組件,其中保存控件在用戶首次使用時,會彈出通知彈窗&#xff0…

C++筆記之接口`Interface`

C++筆記之接口Interface code review! 一個簡潔簡短的 C++ 接口實現示例: #include <iostream>// 1. 定義接口(抽象類) class Shape {public:

動態圖表 -- eg1

問題&#xff1a; 前端vue&#xff0c;后端springboot&#xff0c;實現動態表格樣式&#xff0c;&#xff08;表格List<Student>&#xff0c;Student類有年級&#xff0c;班級&#xff0c;文理科分類&#xff0c;姓名&#xff0c;學號&#xff0c;等屬性。先根據年級分類…

C++學習之shell高級和正則表達式

目錄 1.正則表達式 2.C中使用正則 3.復習 4.sort命令 5.uniq命令 6.wc命令 7.grep命令 8.find命令 9.xargs命令 10.sed命令 11.awk命令 12.crontab 1.正則表達式 1 管道 使用| 將多個命令拼接在一起 原理&#xff0c;就是將前一個命令的標準輸出作為后一個…

【Vue】 實現TodoList案例(待辦事項)

目錄 組件化編碼流程&#xff08;通用&#xff09; 1.實現靜態組件&#xff1a;抽取組件&#xff0c;使用組件實現靜態頁面效果 2.展示動態數據&#xff1a; 1. 常規 HTML 屬性 3.交互——從綁定事件監聽開始 什么時候要用 event&#xff1a; 什么時候不需要用 event&am…

【Bootstrap V4系列】學習入門教程之 組件-卡片(Card)

Bootstrap V4系列 學習入門教程之 組件-卡片&#xff08;Card&#xff09; 卡片&#xff08;Card&#xff09;一、Example二、Content types 內容類型2.1 Body 主體2.2 Titles, text, and links 標題、文本和鏈接2.3 Images 圖片2.4 List groups 列表組2.5 Kitchen sink 洗滌槽…

java學習之數據結構:四、樹(代碼補充)

這部分主要是用代碼實現有序二叉樹、樹遍歷、刪除節點 目錄 1.構建有序二叉樹 1.1原理 1.2插入實現 2.廣度優先遍歷--隊列實現 3.深度優先遍歷--遞歸實現 3.1先序遍歷 3.2中序遍歷 3.3后序遍歷 4.刪除 4.1刪除葉子節點 4.2刪除有一棵子樹的節點 4.3刪除有兩棵子樹的節…

架構進階:什么是數據架構,如何理解數據架構?(華為)

數據架構是企業架構的重要組成部分,DAMA、IBM 及國內大廠對其定義各有側重。它包含數據資產目錄、數據標準、數據模型和數據分布四個組件。數據資產目錄可梳理企業數據資產,數據標準統一數據含義和規則,數據模型反映業務對象關聯關系,數據分布呈現數據流動情況。數據架構是…