iT邦幫忙

0

什麼是JAMstack?

  • 分享至 

  • xImage

大家好,
我想請問什麼是JAMstack?

我有去查詢一些相關資料,不過概念還是很模糊。
目前查到幾個重點是

  1. 整個網頁可以變成CDN的形式,提供服務
  2. 預先將HTML選染好
  3. SPA網頁無法使用JAMstack

這是我查到的資料:
【Vue渲染頁面的流程】
1.加載HTML
2.加載JS
3.解析模板
4.生成渲染函數
5.執行函數,渲染頁面
【Jamstack 的流程則是】
1.加載HTML
2.渲染頁面


我的疑問是

  1. 將專案打包後npm run build,變成html+js,算是Jamstack嗎?(如果我的專案是vue,資料是用axios獲取後端php給的json檔。)
  2. SPA無法使用JAMstack的意思,是說每個分頁,都要做出一個html嗎?
  3. Jamstack是JavaScript+API,那Jamstack流程不用加載JS???
  4. Jamstack是預先將資料處理好,放入HTML?那要如何動態修改資料(例如CRUD資料變動時,Jamstack的網頁,是不會變動?)

越查觀念越模糊...
/images/emoticon/emoticon06.gif

c7217 iT邦新手 5 級 ‧ 2022-03-24 10:08:47 檢舉
https://ithelp.ithome.com.tw/articles/10235208
greenriver iT邦研究生 4 級 ‧ 2022-03-24 10:23:08 檢舉
謝謝。不過我看不懂這段:
因為 JAMstack 不是一種特定的技術,更像是一種架構模式,但這個模式中最關鍵的就是不使用 Apache 或 Express 之類的 Web Server。
因為不管你是用預渲染、靜態網站生成器甚至是工人智慧親手打造,一個使用 JAMstack 架構的網站,一定都已經將所有網站的內容預先產製好了,因此當使用者連線時,根本就不需要執行 Web Server 來做頁面的運算。

意思是說,網頁的資料,是無法做變動的??使用者只能看,不能有後台CRUD的功能?
froce iT邦大師 1 級 ‧ 2022-03-24 10:54:11 檢舉
簡單的說就是回到以前一個靜態網頁配合js,透過api取得資料來渲染。
只是產出的方式從以前一個一個手工刻變成用framework幫你一起產出。

然後那個M我覺得只是拿來湊數的。
圖片
  直播研討會
圖片
{{ item.channelVendor }} {{ item.webinarstarted }} |
{{ formatDate(item.duration) }}
直播中

1 個回答

0
Ray
iT邦大神 1 級 ‧ 2022-03-24 15:16:12
最佳解答


JAMstack 的 A=API Server, 所以並不是資料都固定不會變, 而是內容變化來自於 API 的回應, 前端 Javascript 會根據: API 的回應內容 + Markup 指令, 決定要如何把網頁呈現出來....

所以頁面還是可以動態改變....

我要發表回答

立即登入回答