中文亚洲精品无码_熟女乱子伦免费_人人超碰人人爱国产_亚洲熟妇女综合网

當(dāng)前位置: 首頁(yè) > news >正文

用wordpress制作軟件seo關(guān)鍵詞排名教程

用wordpress制作軟件,seo關(guān)鍵詞排名教程,青海省住房和城鄉(xiāng)建設(shè)廳門(mén)戶(hù)網(wǎng)站,做電影網(wǎng)站哪個(gè)服務(wù)器好最近學(xué)習(xí)了Next.js 14框架,總結(jié)一下預(yù)渲染技術(shù)和具體代碼用法,如果有理解不對(duì)的地方還請(qǐng)大佬指正。 注意以下內(nèi)容只討論App Router的新方案(getStaticProps已經(jīng)棄用)。 1.簡(jiǎn)介 預(yù)渲染主要分為2種技術(shù),靜態(tài)頁(yè)面渲染(…

最近學(xué)習(xí)了Next.js 14框架,總結(jié)一下預(yù)渲染技術(shù)和具體代碼用法,如果有理解不對(duì)的地方還請(qǐng)大佬指正。

注意以下內(nèi)容只討論App Router的新方案(getStaticProps已經(jīng)棄用)。

1.簡(jiǎn)介

預(yù)渲染主要分為2種技術(shù),靜態(tài)頁(yè)面渲染(SSG)和服務(wù)器端渲染(SSR)

預(yù)渲染簡(jiǎn)單說(shuō)就在瀏覽器訪問(wèn)網(wǎng)頁(yè)頁(yè)面時(shí),由服務(wù)器返回完整的html文件,而不是部分?jǐn)?shù)據(jù)。
?

2.靜態(tài)頁(yè)面渲染(SSG)

使用場(chǎng)景:頁(yè)面內(nèi)容基本不怎么變動(dòng),又考慮SEO優(yōu)化和首次頁(yè)面加載速度快。

優(yōu)點(diǎn):SEO優(yōu)化,首頁(yè)加載速度快,服務(wù)端和客戶(hù)端壓力都小。

缺點(diǎn):內(nèi)容更新不及時(shí)。

實(shí)現(xiàn):在編譯項(xiàng)目的時(shí)候就把js動(dòng)態(tài)頁(yè)面編譯成html靜態(tài)頁(yè)面,客戶(hù)端訪問(wèn)時(shí),服務(wù)器直接返回完整html文件,有點(diǎn)返璞歸真的意味。

主要情況有以下4種情況:

1.以下是一個(gè)頁(yè)面(Page.js)的內(nèi)容,在一個(gè)頁(yè)面中沒(méi)有任何動(dòng)態(tài)操作時(shí),會(huì)被默認(rèn)編譯成靜態(tài)頁(yè)面html。

export default function MyPage(){return <main><h1>我的首頁(yè)!</h1></main>
}

2.以下是一個(gè)頁(yè)面(Page.js)的內(nèi)容,在頁(yè)面中上來(lái)就執(zhí)行fetch操作時(shí),會(huì)被默認(rèn)編譯成靜態(tài)頁(yè)面。在編譯時(shí)會(huì)直接去拉取https://jsonplaceholder.typicode.com/users的信息生成html。

export default async function MyPage(){const response = await fetch('https://jsonplaceholder.typicode.com/users')const data = await response.json()//以下不必關(guān)心,主要看上面return(<>...此處省略</>)
}

3.動(dòng)態(tài)路由

在動(dòng)態(tài)路由中,希望生成靜態(tài)頁(yè)面,添加getStaticPaths函數(shù),然后指定id,對(duì)應(yīng)的id的頁(yè)面就在編譯時(shí)生成靜態(tài)頁(yè)面。

export default async function Post({ params }) {const id = params.postIdconst response = await fetch(`https://jsonplaceholder.typicode.com/posts/${id}`)//在服務(wù)器端獲取數(shù)據(jù)const data = await response.json()//以下不必關(guān)心,主要看上面return (...此處省略)
}export async function getStaticPaths(){return {paths: [{params:{postId: '1'}},{params:{postId: '2'}},{params:{postId: '3'}}],fallback: false}
}

其中fallback為false,表示訪問(wèn)除了指定的1,2,3的postId之外的其他頁(yè)面全報(bào)404找不到。

其中fallback為true,表示訪問(wèn)除了指定的1,2,3的postId之外,在客戶(hù)端第一次訪問(wèn)改頁(yè)面時(shí),會(huì)先返回一個(gè)加載過(guò)渡頁(yè)面,服務(wù)器會(huì)去嘗試靜態(tài)生成html,然后在返回html給客戶(hù)端。

其中fallback為block,表示訪問(wèn)除了指定的1,2,3的postId之外,在客戶(hù)端第一次訪問(wèn)改頁(yè)面時(shí),會(huì)卡住等待,服務(wù)器會(huì)去嘗試靜態(tài)生成html,然后在返回html給客戶(hù)端。

4.增量靜態(tài)生成 ISR(Buff疊加)

如果頁(yè)面的內(nèi)容是會(huì)更新的,純純的靜態(tài)頁(yè)面就無(wú)法滿(mǎn)足了,那么可以使用ISR技術(shù)。

說(shuō)人話(huà)就是,我雖然是靜態(tài)頁(yè)面,但是我只保持給定時(shí)間(如5秒鐘),超過(guò)5秒鐘后,如果有客戶(hù)端來(lái)訪問(wèn),服務(wù)器就重新去fetch數(shù)據(jù),重新生成一次html再返回給客戶(hù)端。

export const revalidate = 5 //5s后如果有請(qǐng)求,則重新生成該頁(yè)面export default async function MyPage(){const response = await fetch('https://jsonplaceholder.typicode.com/users')const data = await response.json()//以下是data的使用,不必關(guān)心,主要看上面return(<>...此處省略</>)
}

如上,只需要把revalidate設(shè)定并export出去,就可以使用ISR技術(shù)了,是不是很簡(jiǎn)單。

3.服務(wù)端頁(yè)面渲染(SSR)

使用場(chǎng)景:頁(yè)面內(nèi)容經(jīng)常變動(dòng),又考慮SEO優(yōu)化和頁(yè)面加載速度快。

優(yōu)點(diǎn):SEO優(yōu)化,首次加載速度快,客戶(hù)端壓力小。

缺點(diǎn):服務(wù)端壓力變大。

實(shí)現(xiàn):服務(wù)端渲染就是客戶(hù)端每次頁(yè)面訪問(wèn)時(shí),服務(wù)器都會(huì)重新fetch拉取數(shù)據(jù),并重新生成html,再返回給客戶(hù)端。

使用方法如下

export default async function MyPage(){const response = await fetch('https://jsonplaceholder.typicode.com/users',{ cache: 'no-store'})const data = await response.json()//以下不必關(guān)心,主要看上面return(<>...此處省略</>)
}

只需要在fetch后面加入{ cache: 'no-store'}就可以開(kāi)啟了,是不是很簡(jiǎn)單。

4.客戶(hù)端頁(yè)面渲染(CSR)

使用場(chǎng)景:用戶(hù)動(dòng)態(tài)交互很多的頁(yè)面,也不需要SEO。

優(yōu)點(diǎn):動(dòng)態(tài)交互,服務(wù)器壓力小。

缺點(diǎn):首次加載速度慢,頁(yè)面內(nèi)容不是純html,不利于SEO。

實(shí)現(xiàn):這種就是傳統(tǒng)的react的方式,利用useEffect去拉取數(shù)據(jù),注意一定要標(biāo)明"use client",不是nextjs的方式了,但是也可以在nextjs中使用。

"use client"//默認(rèn)next.js為"use server",所有使用CSR時(shí)必須添加該標(biāo)識(shí)import { useState,useEffect } from "react";//客戶(hù)端獲取數(shù)據(jù)的方法
function MyPage(){const [data, setData] = useState(null)useEffect(()=>{async function  fetchMyData() {const response = await fetch('https://jsonplaceholder.typicode.com/users')const data = await response.json()setData(data)}fetchMyData()},[])//以下不必關(guān)心,主要看上面return (...此處省略)
}export default MyPage

總結(jié)

在實(shí)際開(kāi)發(fā)一個(gè)網(wǎng)站時(shí),可能需要將以上幾種方案混合在一起,發(fā)揮各自的特長(zhǎng),而且這些都可以在Next.js中做到,是不是很強(qiáng)大?哈哈,以上是我的學(xué)習(xí)總結(jié),希望能幫到你,加油💪🏻

http://www.risenshineclean.com/news/55048.html

相關(guān)文章:

  • 微商城開(kāi)發(fā)公司有哪些比較好百度seo價(jià)格查詢(xún)
  • 企業(yè)網(wǎng)站建設(shè)模塊長(zhǎng)沙百度開(kāi)戶(hù)
  • 綿陽(yáng)做最好優(yōu)化網(wǎng)站的云資源軟文發(fā)布平臺(tái)
  • 網(wǎng)站后臺(tái)管理是什么網(wǎng)絡(luò)seo公司
  • 做賭博網(wǎng)站賺企業(yè)網(wǎng)站推廣
  • 茂名網(wǎng)站制作價(jià)格生意參謀指數(shù)在線轉(zhuǎn)換
  • 電子商務(wù)網(wǎng)站購(gòu)物車(chē)怎么做建網(wǎng)站軟件工具
  • 自己做網(wǎng)站跟域名怎樣做常州網(wǎng)站建設(shè)制作
  • 美女直接做的網(wǎng)站有哪些汕頭網(wǎng)站建設(shè)方案推廣
  • 手機(jī)網(wǎng)站建設(shè)模板3步打造seo推廣方案
  • 學(xué)做ppt推薦網(wǎng)站收錄查詢(xún) 站長(zhǎng)工具
  • 南通網(wǎng)站制作專(zhuān)家比較靠譜的網(wǎng)站
  • 網(wǎng)頁(yè)設(shè)計(jì)的基礎(chǔ)aso優(yōu)化平臺(tái)有哪些
  • 嵊州市住房和城鄉(xiāng)建設(shè)局網(wǎng)站人民日?qǐng)?bào)今日新聞
  • 淄博論壇網(wǎng)站建設(shè)百度營(yíng)銷(xiāo)
  • 寧波制作網(wǎng)站公司廣告外鏈購(gòu)買(mǎi)交易平臺(tái)
  • 高端 網(wǎng)站制作廣告營(yíng)銷(xiāo)方式有哪幾種
  • 企業(yè)信息系統(tǒng)有哪些百度seo軟件
  • 外貿(mào)網(wǎng)站頁(yè)面用什么做最好可以推廣的平臺(tái)
  • 網(wǎng)站開(kāi)發(fā)問(wèn)題論文定制型營(yíng)銷(xiāo)網(wǎng)站建設(shè)
  • 分析網(wǎng)站建設(shè)前期的seo準(zhǔn)備工作網(wǎng)絡(luò)營(yíng)銷(xiāo)案例100例
  • c web網(wǎng)站開(kāi)發(fā)權(quán)限windows優(yōu)化大師靠譜嗎
  • 江山建設(shè)工程信息網(wǎng)站網(wǎng)站開(kāi)發(fā)的基本流程
  • 有哪些設(shè)計(jì)網(wǎng)站佛山百度推廣電話(huà)
  • 熾樂(lè)清網(wǎng)站建設(shè)廣州seo公司官網(wǎng)
  • 計(jì)算機(jī)專(zhuān)業(yè)吃香嗎怎么優(yōu)化標(biāo)題和關(guān)鍵詞排名
  • 做網(wǎng)站教程和維護(hù)網(wǎng)站seo公司 彼億營(yíng)銷(xiāo)
  • wordpress收藏本站代碼泰安網(wǎng)站推廣優(yōu)化
  • 網(wǎng)站二維碼彈窗推廣優(yōu)化網(wǎng)站排名教程
  • 西安網(wǎng)站建設(shè)首選那家2345電腦版網(wǎng)址導(dǎo)航