基础教程 | 用VuePress搭建一个简单的个人博客(附源码)

news2024/12/26 21:13:34

先附上自己个人博客页面:https://illusionno.github.io/
源码也在这里:https://github.com/illusionno/my-blog (如果觉得有帮助,可以点颗star✨)
使用的主题是vuepress-theme-reco@2.x,并在上面进行了一些调整。

💬注:美化版博客在blog目录下,基础版博客在simple-blog目录下!!
在这里插入图片描述

在这里插入图片描述

在这里插入图片描述
这里先介绍VuePress的基础使用,也就是目前大多数文档的那种简约风主题。

1. 基础版博客

使用VuePress简单搭建,原生主题:
在这里插入图片描述

在这里插入图片描述

1.1 VuePress初步搭建

1.创建并进入一个新目录

mkdir my-blogs
cd my-blogs

2.使用你喜欢的包管理器进行初始化

npm init -y

3.将 VuePress 安装为本地依赖

 npm install -D vuepress

4.创建文档,并先随便写些内容

mkdir docs
echo '# Hello VuePress' > docs/README.md

注意:使用命令行写入内容时,README.md的编码格式如下,不然页面会乱码显示
在这里插入图片描述

5.在 package.json 中添加一些 scripts指令

"scripts": {
    "docs:dev": "vuepress dev docs",
    "docs:build": "vuepress build docs"
  }

6.启动本地服务器

npm run docs:dev

1.2 基本配置

先在docs目录下创建一个 .vuepress 目录,所有 VuePress 相关的文件都将会被放在这里。
再在 .vuepress 文件夹下添加 config.js文件,它用于配置网站的标题和描述。
现在的项目结构如下:
在这里插入图片描述

config.js中添加顶部导航栏和侧边栏配置:

module.exports = {
  // 添加标题和描述
  title: "MY BLOG",
  description: "description of my blog",
  themeConfig: {
    // 顶部导航栏
    nav: [
      { text: "首页", link: "/" },
      { text: "CSDN", link: "" },
      { text: "Github", link: "" },
    ],
    // 侧边栏
    sidebar: [
      {
        title: '分类1',   // 必要的
        path: '/categroy1/',      // 可选的, 标题的跳转链接,应为绝对路径且必须存在
        collapsable: false,// 是否可折叠,默认为true
        sidebarDepth: 1,    // 可选的, 默认值是 1
        children: [
         {
          title: '分类1-1',   // 必要的
          path: '/categroy1/one',      // 可选的, 标题的跳转链接,应为绝对路径且必须存在
        
         },
         {
          title: '分类1-2',   // 必要的
          path: '/categroy1/two',      // 可选的, 标题的跳转链接,应为绝对路径且必须存在
        
         }
        ]
      },
      {
        title: '分类2',  
        path: '/categroy2/',    
        collapsable: true, 
        children: [
         {
          title: '分类2-1',  
          path: '/categroy2/one',     
        
         },
         {
          title: '分类2-2',  
          path: '/categroy2/two',   
         }
        ]
      }
    ]
  },
}; 

文档结构如下:
在这里插入图片描述
在这里插入图片描述

1.3 主页配置

在这里插入图片描述

VuePress 遵循 “约定优于配置” 的原则,静态资源图片存放在 .vuepress 文件夹下的 public 文件夹中。

在这里插入图片描述

主页README,md配置如下:

---
home: true
heroImage: /avatar.jpg
heroText: Hero 标题
tagline: Hero 副标题
actionText: 快速上手 →
actionLink: /category1/
features:
- title: 简洁至上 
  details: 以 Markdown 为中心的项目结构,以最少的配置帮助你专注于写作。
- title: Vue驱动
  details: 享受 Vue + webpack 的开发体验,在 Markdown 中使用 Vue 组件,同时可以使用 Vue 来开发自定义主题。
- title: 高性能
  details: VuePress 为每个页面预渲染生成静态的 HTML,同时在页面被加载的时候,将作为 SPA 运行。
footer: Copyright © 2018-present baitao
---

1.4 favicon图标自定义

在这里插入图片描述
将图片先转成favicon.ico格式:🔍在线制作ico图标

将图片放在 public 目录下:
在这里插入图片描述

config.js中添加以下配置,设置favicon.ico的路径。

  head: [
    [
      'link',{ rel: 'icon', href: '/favicon.ico' }
    ]
  ],

更多其他设置,可以查看VuePress官网:https://vuepress.vuejs.org/zh/

2. 美化版博客

目前VuePress的热门主题有如下几个:
在这里插入图片描述
可以选择一个自己喜欢的风格:https://ecosystem.vuejs.press/zh/
我这里使用的是 vuepress-theme-reco@2.x 主题风格,
🔍vuepress-theme-reco@2.x文档

在使用该主题时,需要注意不可参照方默认主题文档来配置,必须按照该文档进行配置。
在这里插入图片描述
使用 vuepress-reco模板快速开始:

npx @vuepress-reco/theme-cli init

根据提示进行选择,哪一个模板其实都可以,不过主页会有些区别。可以直接选择2.x,风格会好看些。
在这里插入图片描述

在这里插入图片描述
运行:npm run dev
在这里插入图片描述

再在上面进行魔改一顿:
在这里插入图片描述

在这里插入图片描述
(光标可以悬浮在头像上看看👀)

本文来自互联网用户投稿,该文观点仅代表作者本人,不代表本站立场。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如若转载,请注明出处:http://www.coloradmin.cn/o/2211381.html

如若内容造成侵权/违法违规/事实不符,请联系多彩编程网进行投诉反馈,一经查实,立即删除!

相关文章

基于Java Web众筹系统的设计与实现

文未可获取一份本项目的java源码和数据库参考。 体育俱乐部是我国体育产业的重要组成部分,而乒乓球作为“国球”,在我国拥有最广泛的群众基础。在世界乒坛,面对如此激烈的外部竞争环境,我国乒乓球运动应扎扎实实地研究基层职业乒乓…

考研C语言程序设计_语法相关(持续更新)

目录 一、语法题strlen转义字符内置数据类型字符串结束标志局部变量和全局变量名字冲突 局部优先switch语句中的关键字数组初始化是否正确注意define不是关键字C语言中不能用连等判断switch( )的括号里可以是什么类型?关于if关于switch 二、程序阅读题有关static有关continue说…

初级前端面试(2)

1.讲一下闭包相关知识,和普通函数有什么区别 闭包是什么:JS中内层函数可以访问外层函数的变量,外层函数无法操作内存函数的变量的特性。我们把这个特性称作闭包。 闭包的好处: 隔离作用域,保护私有变量;…

快速了解接口测试

1、定义 什么是接口测试? 接口测试是测试系统组件间接口的一种测试。接口测试主要用于检测外部系统与系统之间以及内部各个子系统之间的交互点。测试的重点是要检查数据的交换,传递和控制管理过程,以及系统间的相互逻辑依赖关系等。 接口测…

Vue3高级API的使用

介绍 在前面的内容中,我们已经学习到了很多 Vue 3 的基础语法与一些常用的 API。 本节我们将介绍一些高级 API,带领大家进一步深入了解 Vue 3。 主要内容 ●customRef() ●markRaw() ●toRaw() ●获取 DOM 元素 customRef 方法 customRef&#…

DNS隧道技术原理及其典型应用场景剖析

DNS隧道(DNS Tunneling)本质为一种网络通信技术,它利用DNS协议在客户端和服务器之间传输数据,主要用来绕过网络限制进行数据隐蔽传输,但在实际场景中,DNS隧道已经成为黑客忠爱的攻击媒介。 1. 概览 DNS是互…

Linux之HugePage的原理与使用

Linux之HugePage的原理与使用 虚拟地址与物理地址虚拟地址物理地址虚拟地址与物理地址的转换 HugePage的概念Linux使用HugePage创建HugePage在程序中使用HugePage 总结 虚拟地址与物理地址 在研究HugePage之前,首先需要明白虚拟地址和物理地址的概念。在计算机系统…

baby_web-CTFWeb进阶wp-攻防世界14

baby_web-CTFWeb进阶wp-攻防世界14 页面显示1.php,可以先访问下源码和index.php,发现内容一致,再查看下cookie和header,看一下有没有藏flag,发现没。 dirsearch一下,发现访问index.php会重定向到1.php。抓…

想一键获取视频文案?2024年这3款好用的视频转文字工具来帮忙

嘿,咱们现在活在21世纪,这信息多得跟啥似的。视频这东西,不管是学东西、娱乐还是工作,都挺受欢迎的,因为它直观、生动嘛。但是,有时候咱们想从视频里提取点有用的信息,还挺费劲的。幸好啊&#…

深圳大学-Java程序设计-选实验2 类的初级应用

实验目的与要求: 实验目的:初步掌握面向对象编程中类的编写。 实验要求: (1).运行第4章课件中第4页、第24页、第32页和第34页中的四个程序,并对每一行语句加上注释。对每一行语句加上注释。在报告中附上程序截图、运行结果截图和…

zerotier安装配置

目录 1.简介1.1.基本概念1.1.1.节点1.它可以是:2.每个节点都有以下特征:3.节点的主要功能包括: 1.1.2.根服务器1.定义:2.功能:3.特点:4.角色:5.安全性:6.与普通节点的区别:7.自托管选项: 1.1.3.…

51单片机的智能电饭煲【proteus仿真+程序+报告+原理图+演示视频】

1、主要功能 该系统由AT89C51/STC89C52单片机LCD1602显示模块温度传感器继电器按键、LED等模块构成。适用于智能电饭锅等相似项目。 可实现功能: 1、LCD1602实时显示温度、运行模式、煮饭等模式的计时时间 2、首先选择电饭锅的模式,如煮饭、煮粥、蒸、煲汤&#…

React入门 9:React Router

1. 什么是路由 路由(routing)就是通过互联的网络把信息从源地址传输到目的地址的活动。 以上是中文维基百科对路由的解释。通俗的来讲,把一个地方的信息传输到他想去的目的地的过程,就叫路由。 2. 用代码解释路由 需求&#xff1a…

【Spring】获取Cookie和Session(@CookieValue()和@SessionAttribute())

获取 Cookie 传统获取 Cookie 这是没有 Spring 的时候,用 Servlet 来获取(获取所有的 Cookie) Spring MVC 是基于 Servlet API 构建的原始 Web 框架,也是在 Servlet 的基础上实现的 RequestMapping("/getcookie") …

CubeMX电机驱动以及编码器计数配置

一、选型 电机MG310: 电机驱动板TB6612: STM32F407VETx: 二、CubeMX配置 配置外部时钟: GPIO口配置: 需要四个I/O输出口: PWM口配置: 这里使用的是定时器TIM1,设置预分频器71&…

使用mnist数据集和LeakyReLU高级激活函数训练神经网络示例代码

一、概述 神经网络中的激活函数是用于增加网络的非线性特性的函数,没有激活函数,神经网络将仅仅是一个线性模型,无法解决复杂的非线性问题。激活函数的选择对神经网络的性能有很大的影响。 基础激活函数是神经网络中使用较早、较为简单的激…

AOA定位技术在智慧停车场中的应用

‌AOA定位技术是一种基于信号到达角度的定位方法,通过测量无线信号到达接收器的入射角度来实现精确定位。‌ AOA定位技术的核心原理是利用接收器内的多个天线阵列来测量信号的相位差,从而计算出信号的到达角度,最终确定位置‌。 在智慧停…

SpringBoot在高校学科竞赛平台中的应用与优化

2相关技术 2.1 MYSQL数据库 MySQL是一个真正的多用户、多线程SQL数据库服务器。 是基于SQL的客户/服务器模式的关系数据库管理系统,它的有点有有功能强大、使用简单、管理方便、安全可靠性高、运行速度快、多线程、跨平台性、完全网络化、稳定性等,非常…

数据结构之旅(顺序表)

前言: Hello,各位小伙伴们我们在过去的60天里学完了C语言基本语法,由于小编在准备数学竞赛,最近没有给大家更新,并且没有及时回复大家的私信,小编在这里和大家说一声对不起!,小编这几天会及时给大家更新初阶数据结构的内容,然后我们来学习今天的内容吧! 一. 顺序表的概念和结…

鸿蒙开发案例:通过三杯猜球学习显示动画

【引言】 “三杯猜球”是一个经典的益智游戏,通常由一名表演者和多名参与者共同完成。表演者会将一个小球放在一个杯子下面,然后将三个杯子快速地交换位置,参与者则需要猜出最终哪个杯子下面有小球。本文将介绍如何使用HarmonyOS NEXT技术&a…