日韩性视频-久久久蜜桃-www中文字幕-在线中文字幕av-亚洲欧美一区二区三区四区-撸久久-香蕉视频一区-久久无码精品丰满人妻-国产高潮av-激情福利社-日韩av网址大全-国产精品久久999-日本五十路在线-性欧美在线-久久99精品波多结衣一区-男女午夜免费视频-黑人极品ⅴideos精品欧美棵-人人妻人人澡人人爽精品欧美一区-日韩一区在线看-欧美a级在线免费观看

歡迎訪問 生活随笔!

生活随笔

當(dāng)前位置: 首頁 > 前端技术 > vue >内容正文

vue

我的这套VuePress主题你熟悉吧

發(fā)布時(shí)間:2025/3/8 vue 60 豆豆
生活随笔 收集整理的這篇文章主要介紹了 我的这套VuePress主题你熟悉吧 小編覺得挺不錯(cuò)的,現(xiàn)在分享給大家,幫大家做個(gè)參考.

最近熬了很多個(gè)夜晚, 踩坑無數(shù), 終于寫出了用VuePress驅(qū)動(dòng)的主題.

只需體驗(yàn)三分鐘,你就會(huì)跟我一樣,愛上這款主題.

vuepress-theme-indigo-material, 已經(jīng)發(fā)布到npm, 請客官享用~~

介紹

vuepress-theme-indigo-material 的原主題是hexo-theme-indigo, github 的 star 數(shù)高達(dá)2042, fork 的有451個(gè), 它在靜態(tài)博客網(wǎng)站中的應(yīng)用處處可見.在這里首先感謝原作者.

然而它的定位是僅支持 IE10+ 等現(xiàn)代瀏覽器。既然不需要支持老版本瀏覽器, 在前端發(fā)展迅猛的今天, 已經(jīng)有許多技術(shù)能夠讓網(wǎng)址更快, 所以我用VuePress來重寫了它. 其實(shí) indigo 的原作者已經(jīng)在用 vuepress 重寫了, 但是項(xiàng)目一直沒有進(jìn)展, 所以我接過了這個(gè)任務(wù), 最后重寫的效果是挺滿意的.

可以看看下面,本主題在我的有 51 篇博客筆記下, 部署在 github page, 在手機(jī) 4G 網(wǎng)絡(luò)下的加載速度gif 圖,網(wǎng)頁加載速度非常快,更快的是,網(wǎng)頁加載完成后,此后每個(gè)頁面的打開速度,都是仿佛在點(diǎn)擊本地文件.

具體感受可以點(diǎn)擊我的博客網(wǎng)站來親身感受, 部署在 github page 下, 國內(nèi)請可以點(diǎn)擊碼云的 page 地址

正如VuePress文檔所說:

每一個(gè)由 VuePress 生成的頁面都帶有預(yù)渲染好的 HTML,也因此具有非常好的加載性能和搜索引擎優(yōu)化(SEO)。

用 Lighthouse 來測試網(wǎng)站中, SEO 一直都是100 ,打包后的大小也比起原主題小了許多.

巧妙之處

加載快的原因還在于是先在本地編譯中把數(shù)據(jù)寫進(jìn)相應(yīng)的 js 文件,

fs.writeFile(`${dataPath}/search.js`,`export default ${JSON.stringify(search, null, 2)};`,error => {if (error)return console.log('寫入搜索search文件失敗,原因是' + error.message);console.log('寫入搜索search文件成功');} ); 復(fù)制代碼

然后在網(wǎng)頁被打開時(shí), 在 vue.js 的生命周期 created 中, 結(jié)合 webpack 的 import()語法導(dǎo)入相應(yīng)存放數(shù)據(jù)的 js 文件.

created() {import(/* webpackChunkName: "search" */ "Data/search.js").then(search => {this.search = search.default;});}, 復(fù)制代碼

webpack 會(huì)把代碼分割,按需去利用 jsonp 去請求 js 文件, 這樣我們就能在本地編譯時(shí)整理所需的數(shù)據(jù), 然后模擬了 web APP 開發(fā)的流程, 頁面先到達(dá)呈現(xiàn), 數(shù)據(jù)后請求.而不用怕我們所需要的數(shù)據(jù)和網(wǎng)頁一起一次發(fā)過來,讓網(wǎng)頁加載速度緩慢

最后利用 vue 強(qiáng)大的 MVVM, 因?yàn)閿?shù)據(jù)都有了, 此后的頁面幾乎是立即渲染, 即點(diǎn)即開.

這是我探索出來對沒有后端的靜態(tài)網(wǎng)站的一種很好的性能優(yōu)化.

您換主題的理由

  • 更快更小,
  • 改進(jìn)我在一年的的使用中感受到的原主題一些交互和外觀, 例如刪除分享功能, 移除了打賞功能, 增加移動(dòng)端文章目錄導(dǎo)航等等
  • 更加容易自定義, vuepress 的主題和插件很靈活,只要您會(huì) Vue, 就能利用相關(guān)知識修改原主題, 和平時(shí)工作中寫的頁面和 APP 差不多
  • 居于本地?cái)?shù)據(jù)的全文搜索
  • 擁抱 vue, 然后能享用它的生態(tài), 例如組件庫, 本主題就利用了 element ui
  • 享用 vuepress 的 Markdown 拓展 , 例如在 Markdown 中 使用 Vue,自定義文章摘要
  • 理論上非常好的 SEO
  • 兼容 hexo 原主題寫的 markdwon 文件, 不用修改即可搬遷移到本主題, 前提是您原來文件有遵守原主題的規(guī)則, 例如在文件頂部有包含 YAML front matte
--- title: 【讀書筆記】《JavaScript權(quán)威指南》第7章數(shù)組 date: 2018-11-08 04:10:03 tags: [讀書筆記, 《JavaScript權(quán)威指南》] --- 復(fù)制代碼
  • 已經(jīng)發(fā)布到 npm, 只需要下載即可, 還提供一套模板文件結(jié)構(gòu), 下載依賴后立即可以使用, 還提供了相關(guān)操作的 shell 文件,雙擊即可,幾分鐘就能有自己的博客
  • 內(nèi)置評論功能
  • ......

瀏覽器兼容性

由于博客面向的群體比較都是技術(shù)人員, 所以本主題只在最新版的谷歌瀏覽器和火狐瀏覽器測試無誤

vuepress 默認(rèn)有編譯一些對老版本瀏覽器的兼容, 具體控制請看它官網(wǎng)配置

我寫了很詳細(xì)的文檔, 趕快去體驗(yàn)一下vuepress-theme-indigo-material吧, 如果覺得不錯(cuò), 您能給我一個(gè)star嗎?

github地址:github.com/zhhlwd/vuep…

轉(zhuǎn)載于:https://juejin.im/post/5c6dc6465188256559172860

總結(jié)

以上是生活随笔為你收集整理的我的这套VuePress主题你熟悉吧的全部內(nèi)容,希望文章能夠幫你解決所遇到的問題。

如果覺得生活随笔網(wǎng)站內(nèi)容還不錯(cuò),歡迎將生活随笔推薦給好友。