【小沐学前端】VuePress制作在线电子书、技术文档(VuePress + Markdown + node)

文章目录

  • 1、简介
    • 1.1 VuePress简介
    • 1.2 它是如何工作的?
  • 2、安装node
  • 3、安装VuePress
  • 4、配置VuePress
    • 4.1 修改标题
    • 4.2 修改导航条
    • 4.3 修改右侧栏
    • 4.4 修改正文
  • 结语

1、简介

Vue驱动的静态网站生成器,生成的网页内容放到自己服务器上管理,可用于遍写技术文档或个人博客。

官网地址:
https://vuepress.vuejs.org/zh/

在这里插入图片描述

1.1 VuePress简介

VuePress 由两部分组成:第一部分是一个极简静态网站生成器 (opens new window),它包含由 Vue 驱动的主题系统和插件 API,另一个部分是为书写技术文档而优化的默认主题,它的诞生初衷是为了支持 Vue 及其子项目的文档需求。

每一个由 VuePress 生成的页面都带有预渲染好的 HTML,也因此具有非常好的加载性能和搜索引擎优化(SEO)。同时,一旦页面被加载,Vue 将接管这些静态内容,并将其转换成一个完整的单页应用(SPA),其他的页面则会只在用户浏览到的时候才按需加载。

1.2 它是如何工作的?

事实上,一个 VuePress 网站是一个由 Vue (opens new window)、Vue Router (opens new window)和 webpack (opens new window)驱动的单页应用。如果你以前使用过 Vue 的话,当你在开发一个自定义主题的时候,你会感受到非常熟悉的开发体验,你甚至可以使用 Vue DevTools 去调试你的自定义主题。

2、安装node

下载地址:
https://nodejs.org/zh-cn/download
在这里插入图片描述
验证是否安装成功:
命令窗口输入:node -v 和npm -v 安装成功了的话会显示软件版本。

node -v
npm -v

在这里插入图片描述

3、安装VuePress

  • 步骤 1: 创建并进入一个新目录
mkdir vuepress-starter
cd vuepress-starter

在这里插入图片描述

  • 步骤 2: 初始化项目
git init
npm init

在这里插入图片描述
在这里插入图片描述

  • 步骤 3: 将 VuePress 安装为本地依赖
npm install -D vuepress@next

在这里插入图片描述

  • 步骤 4: 在 package.json 中添加一些 scripts
{"scripts": {"docs:dev": "vuepress dev docs","docs:build": "vuepress build docs"}
}

在这里插入图片描述

  • 步骤 5: 将默认的临时目录和缓存目录添加到 .gitignore 文件中
echo 'node_modules' >> .gitignore
echo '.temp' >> .gitignore
echo '.cache' >> .gitignore
  • 步骤 6: 创建你的第一篇文档
mkdir docs
echo '# Hello VuePress' > docs/README.md

在这里插入图片描述

  • 步骤 7: 在本地启动服务器来开发你的文档网站
npm run docs:dev

在这里插入图片描述
浏览器预览如下:

http://localhost:8080/

在这里插入图片描述
修改README.md文本内容:
在这里插入图片描述
浏览器预览如下:
在这里插入图片描述
VuePress 会在 http://localhost:8080 启动一个热重载的开发服务器。当你修改你的 Markdown 文件时,浏览器中的内容也会自动更新。

现在,你应该已经有了一个简单可用的 VuePress 文档网站。

4、配置VuePress

你的项目结构可能是这样:

├─ docs
│  ├─ .vuepress
│  │  └─ config.js
│  └─ README.md
├─ .gitignore
└─ package.json

VuePress 站点的基本配置文件是 .vuepress/config.js ,但也同样支持 TypeScript 配置文件。你可以使用 .vuepress/config.ts 来得到更好的类型提示。

新建配置config.js,内容如下:

import { defineUserConfig } from 'vuepress'export default defineUserConfig({lang: 'zh-CN',title: '你好, 爱看书的小沐 !',description: '这是我的第一个 VuePress 站点',
})

在这里插入图片描述
浏览器预览如下:
在这里插入图片描述
VuePress 是以 Markdown 为中心的。你项目中的每一个 Markdown 文件都是一个单独的页面。

4.1 修改标题

 locales: {'/': {lang: 'en-US',title: '爱看书的小沐',description: 'Vue-powered Static Site Generator',},'/zh/': {lang: 'zh-CN',title: '爱看书的小沐',description: 'Vue 驱动的静态网站生成器',},},

在这里插入图片描述

4.2 修改导航条

import { defaultTheme } from 'vuepress'export default {locales: {'/': {lang: 'en-US',title: '爱看书的小沐',description: 'Vue-powered Static Site Generator',},'/zh/': {lang: 'zh-CN',title: '爱看书的小沐',description: 'Vue 驱动的静态网站生成器',},},theme: defaultTheme({// URLlogo: 'https://vuejs.org/images/logo.png',navbar: [// NavbarItem{text: 'Foo',link: '/foo/',},// NavbarGroup{text: 'Group',children: ['/group/foo.md', '/group/bar.md'],},// 字符串 - 页面文件路径'/bar/README.md',],}),
}

在这里插入图片描述

4.3 修改右侧栏

import { defaultTheme } from 'vuepress'export default {locales: {'/': {lang: 'en-US',title: '爱看书的小沐',description: 'Vue-powered Static Site Generator',},'/zh/': {lang: 'zh-CN',title: '爱看书的小沐',description: 'Vue 驱动的静态网站生成器',},},theme: defaultTheme({// URLlogo: 'https://vuejs.org/images/logo.png',navbar: [// NavbarItem{text: 'Foo',link: '/foo/',},// NavbarGroup{text: 'Group',children: ['/group/foo.md', '/group/bar.md'],},// 字符串 - 页面文件路径'/bar/README.md',],// 侧边栏数组// 所有页面会使用相同的侧边栏sidebar: [// SidebarItem{text: 'Foo',link: '/foo/',children: [// SidebarItem{text: 'github',link: 'https://github.com',children: [],},// 字符串 - 页面文件路径'/foo/bar.md',],},// 字符串 - 页面文件路径'/bar/README.md',],}),
}

在这里插入图片描述

4.4 修改正文

'# Hello VuePress, 爱看书的小沐 2023' ::: tip
这是一个提示
:::::: warning
这是一个警告
:::::: danger
这是一个危险警告
:::::: details
这是一个 details 标签
:::

文件修改的情况:
在这里插入图片描述
浏览器预览如下:
在这里插入图片描述

结语

如果您觉得该方法或代码有一点点用处,可以给作者点个赞,或打赏杯咖啡;╮( ̄▽ ̄)╭
如果您感觉方法或代码不咋地//(ㄒoㄒ)//,就在评论处留言,作者继续改进;o_O???
如果您需要相关功能的代码定制化开发,可以留言私信作者;(✿◡‿◡)
感谢各位大佬童鞋们的支持!( ´ ▽´ )ノ ( ´ ▽´)っ!!!

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

如若内容造成侵权/违法违规/事实不符,请联系编程知识网进行投诉反馈email:809451989@qq.com,一经查实,立即删除!

相关文章

HTML+CSS+JavaScript:渲染电商站购物车页面

一、需求 根据下图渲染购物车页面 二、代码素材 以下是缺失JS部分的代码&#xff0c;感兴趣的小伙伴可以先自己试着写一写 <!DOCTYPE html> <html lang"en"><head><meta charset"UTF-8"><meta http-equiv"X-UA-Compatib…

【总结】p50蓝图概念、面向对象思想、函数事件宏的区别

p50蓝图概念、面向对象思想、函数事件宏的区别 函数的概念&#xff08;纯虚函数和函数&#xff09;宏的概念函数、事件、宏的区别变量的概念面向对象思想&#xff08;封装、继承、多态&#xff09;类和对象的关系Object、actor、pawn、Character、component之间的区别控制权、玩…

振弦传感器信号转换器应用山体滑坡安全监测

振弦传感器信号转换器应用山体滑坡安全监测 随着人类文明的进步&#xff0c;自然灾害对人们的生活和财产安全造成的威胁也越来越大。山体滑坡作为自然灾害中的一种&#xff0c;给人们的生活和财产安全带来了极大的威胁。因此&#xff0c;进行山体滑坡的安全监测显得尤为重要。振…

uniapp 持续获取定位(登录状态下才获取)(不采用定时器)(任意页面都可监听定位改变)

基于上次文章做了优化和改良,保证在登录状态下才获取定位信息 uniapp 小程序实时且持续获取定位信息(全局设置一次)(单页面监听定位改变)(不采用定时器)_uniapp小程序定位_前端小胡兔的博客-CSDN博客本篇文章实现了uniapp 微信小程序实时获取定位信息,小程序打开即可持续获取定…

补充JDK源码-IDEA集成工具

在阅读JDK8源码的时候发现&#xff0c;只有一小部分常用包是存在源码及其注释的&#xff0c;而很多内部包是没有源码&#xff0c;class文件在阅读的时候对阅读者十分不友好。在网上搜集了很多资料都没有解决问题。 解决问题办法&#xff1a;参考文档。本文主要是根据这篇文章记…

笔记本WIFI连接无网络【实测有效解决方案,不用重启电脑】

笔记本Wifi连接无网络实测有效解决方案 问题描述&#xff1a; 笔记本买来一段时间后&#xff0c;WIFI网络连接开机一段时间还正常连接&#xff0c;但是过一段时间显示网络连接不上解决方案&#xff1a; 1.编写网络重启bat脚本&#xff0c;将以下内容写到文本文件&#xff0c;把…

Dockerfile构建lamp镜像

1、构建目录 [rootdocker ~]# mkdir compose_lamp [rootdocker ~]# cd compose_lamp/ 2、编写Docekerfile [rootdocker compose_lamp]# vim Dockerfile #基础镜像 FROM centos:7#维护该镜像的用户信息 MAINTAINER Crushlinux <crushlinux163.com>#安装httpd RUN yum -…

【小沐学前端】GitBook制作在线电子书、技术文档(gitbook + Markdown + node)

文章目录 1、简介1.1 工具简介1.2 使用费用 2、安装2.1 安装node2.2 安装gitbook 3、测试3.1 编辑文档3.2 编译工程3.3 预览工程 结语 1、简介 官网地址&#xff1a; https://www.gitbook.com/1.1 工具简介 什么是 GitBook&#xff1f; GitBook 是一个现代文档平台&#xff…

Vue电商项目--导航守卫

导航守卫理解 导航 守卫 导航&#xff1a;表示路由正在发送改变&#xff0c;进行路由跳转 守卫&#xff1a;你把它当中‘紫禁城守卫’ 全局守卫&#xff1a;你项目中&#xff0c;只要路由变化&#xff0c;守卫就能监听到。 举例&#xff1a;紫禁城【皇帝&#xff0c;太子】…

【ONE·Linux || 基础IO(一)】

总言 文件输入与输出相关介绍&#xff1a;语言层面/系统层面文件调用接口举例、文件描述符、重定向说明、缓冲区理解。 文章目录 总言1、文件输入与输出1.1、预备知识1.2、语言层面&#xff1a;回归C语言中文件相关接口1.2.1、打开文件和关闭文件&#xff1a;对当前路径的理解…

了解Linux 的 mmap --- 笔记

学习这篇博客&#xff0c;进行了一些归纳Linux下mmap_linux mmap_一个山里的少年的博客-CSDN博客https://blog.csdn.net/qq_56999918/article/details/127070280 >>读取文件 读取文件方法&#xff1a;由操作系统提供的两个方法&#xff0c;read和write来读写文件。 由…

Java面向对象学习第三部分

一、Static修饰符 static是静态的意思&#xff0c;基本概念如下&#xff1a; Static分类&#xff1a; 一般我们分类都是按照是否使用static修饰进行分类。分为静态变量&#xff08;类变量&#xff09;、实例变量。 静态变量和实例变量的比较&#xff1a; 比较&#xff0c;…