[英]NUXT when is each dist folder used, html/.nuxt/dist/ html/dist/_nuxt/ html/static html/assets?
[英]Why doesn't my nuxt static site serve the static html files found in the Dist folder?
我用 Nuxt 創建了一個博客,其中包含我的每篇文章(articles/_slug.vue)的動態路由。 在_slug.vue文件中,我使用 asyncData 從strapi CMS 中獲取標記內容。
在運行nuxt generate然后nuxt start並導航到我的瀏覽器中的文章頁面后,當我打開頁面源時,我發現有許多 Js 文件正在導入/_nuxt/{randomNumbers}.js和一個 id為 __nuxt的 div ,很可能類似於 SPA 格式。
我的 index.vue 頁面不會發生這種情況,因為當我查看 index.vue 的頁面源時,我的所有內容都在 HTML 中。
谷歌爬蟲能夠索引我的文章頁面上的內容很重要,因此不包含博客內容的頁面來源並不理想。
我不明白的是,當我打開 nuxt 生成的 dist 文件夾時,我發現我的所有文章都在包含 HTML 文件的子文件夾中,這些文件用我的博客內容硬編碼。 所以我想知道為什么 nuxt 不提供這些 HTML 文件,有沒有辦法這樣做?
據我所知,所有頁面和組件 go 在一個名為 Nuxt 的組件中,我認為“__nuxt”元素就是這樣。 順便說一句,使用 asyncData 和“nuxt generate”不會使您的應用程序服務器端動態,因為“nuxt generate”會生成一個 static 站點,並且在使用“nuxt generate”時,所有 asyncData 掛鈎都將被調用一次。 對於硬編碼的博客文章,我認為您應該在 nuxt.config.js 中禁用 Nuxt Crawler。 Nuxt Docs:生成屬性#Crawler
export default {
generate: {
crawler: false
}
}
似乎在 Vercel 上托管項目后,static 行為相應地起作用。 在本地測試網站(nuxt start)時,內容不會預加載到頁面源中,它繼續充當動態路由上的 SPA。 但是,在部署到 Vercel 后,可以在頁面源代碼中找到博客內容。
聲明:本站的技術帖子網頁,遵循CC BY-SA 4.0協議,如果您需要轉載,請注明本站網址或者原文地址。任何問題請咨詢:yoyou2525@163.com.