【小沐学前端】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.rhkb.cn/news/77615.html

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

相关文章

74. 搜索二维矩阵

题目链接:力扣 解题思路:因为矩阵整体上是有序的,所以可以先二分查找target在哪一行中,然后再次二分查找target在当前行的哪一列中。 具体算法如下: 对行使用二分查找: 初始值: int m matrix…

MongoDB SQL

Microsoft Windows [版本 6.1.7601] 版权所有 (c) 2009 Microsoft Corporation。保留所有权利。C:\Users\Administrator>cd C:\MongoDB\Server\3.4\binC:\MongoDB\Server\3.4\bin> C:\MongoDB\Server\3.4\bin> C:\MongoDB\Server\3.4\bin>net start MongoDB 请求的…

使用可视化docker浏览器,轻松实现分布式web自动化

01、前言 顺着docker的发展,很多测试的同学也已经在测试工作上使用docker作为环境基础去进行一些自动化测试,这篇文章主要讲述我们在docker中使用浏览器进行自动化测试如果可以实现可视化,同时可以对浏览器进行相关的操作。 02、开篇 首先…

【0805作业】Linux中 AB终端通过两根有名管道进行通信聊天(半双工)(全双工)

作业一:打开两个终端,要求实现AB进程对话【两根管道】 打开两个终端,要求实现AB进程对话 A进程先发送一句话给B进程,B进程接收后打印B进程再回复一句话给A进程,A进程接收后打印重复1.2步骤,当收到quit后&am…

【react】react中BrowserRouter和HashRouter的区别:

文章目录 1.底层原理不一样:2.path衣现形式不一样3.刷新后对路山state参数的影响4.备注: HashRouter可以用于解决一些路径错误相关的问题 1.底层原理不一样: BrowserRouter使用的是H5的history API,不兼容IE9及以下版不。 HashRouter使用的是URL的哈希值。 2.path衣…

MongoDB文档--基本安装-linux安装(mongodb环境搭建)-docker安装(挂载数据卷)-以及详细版本对比

阿丹: 前面了解了mongodb的一些基本概念。本节文章对安装mongodb进行讲解以及汇总。 官网教程如下: 安装 MongoDB - MongoDB-CN-Manual 版本特性 下面是各个版本的选择请在安装以及选择版本的时候参考一下: MongoDB 2.x 版本&#xff1a…

外贸企业选择CRM的三大特点

外贸营销管理CRM云平台可以帮助外贸企业实现更高质量的营销管理和客户管理。无论是销售、市场营销或客户服务团队的成员,CRM都可以帮助企业更好地理解客户需求,并提供更好的服务。 1.便捷轻量级 云平台的一大优势是用户可以随时随地访问数据&#xff0…

Linux进程概念(一)

文章目录 Linux进程概念查看进程杀死进程进程标识符 手动创建进程的方式fork函数创建进程 进程状态运行态阻塞态和挂起 Linux进程概念 前文我们了解了,进程的基本概念,在课本上被描述为,正在执行的程序,在linux内核上&#xff0c…

管理类联考——写作——论说文——实战篇——行文篇——通用性强,解释多种现象的经典理论——谈必要

前言 本节内容涉及“社会分工理论”“资源稀缺性”“瓶颈理论”等理论。这些理论一般用在“利大于弊式结构”中“整体有必要”的部分,也可用于“AB二元类”题目“谈好处”的部分。 需要注意的是,“有好处”一般指有它更好;“有必要”一般指没…

echarts 饼图的label放置于labelLine引导线上方

一般的饼图基础配置后长这样。 想要实现将文本放置在引导线上方,效果长这样 const options {// ...series: [{label: {padding: [0, -40],},labelLine: {length: 10,length2: 50,},labelLayout: {verticalAlign: "bottom",dy: -10,},},], };label.padd…

Airtest自动化测试工具

一开始知道Airtest大概是在年初的时候,当时,看了一下官方的文档,大概是类似Sikuli的一个工具,主要用来做游戏自动化的,通过截图的方式用来解决游戏自动化测试的难题。最近,移动端测试的同事尝试用它的poco库…

Flink读取mysql数据库(java)

代码如下: package com.weilanaoli.ruge.vlink.flink;import com.ververica.cdc.connectors.mysql.source.MySqlSource; import com.ververica.cdc.connectors.mysql.table.StartupOptions; import com.ververica.cdc.debezium.JsonDebeziumDeserializationSchema; import org…

uniapp返回

// 监听返回事件onNavigationBarButtonTap() {uni.showModal({title: 提示,content: 确定要返回吗?,success: (res) > {if (res.confirm) {uni.navigateBack({delta: 2})}}})},

prometheus+grafana进行服务器资源监控

在性能测试中,服务器资源是值得关注一项内容,目前,市面上已经有很多的服务器资 源监控方法和各种不同的监控工具,方便在各个项目中使用。 但是,在性能测试中,究竟哪些指标值得被关注呢? 监控有…

docker compose一键部署lnmt环境

创建docker compose 目录 [rootlocalhost ~]# mkdir -p /compose_lnmt 编写nginx的dockerfile文件 创建目录 [rootlocalhost compose_lnmt]# mkdir -p nginx 编写nginx配置文件 [rootlocalhost nginx]# vim nginx.conf user root; #运行身份#nginx自动设置进程…

【PostgreSQL】系列之 一 schema详解(二)

🍁 博主 "开着拖拉机回家"带您 Go to New World.✨🍁 🦄 个人主页——🎐开着拖拉机回家_Linux,Java基础学习,大数据运维-CSDN博客 🎐✨🍁 🪁🍁 希望本文能够给您带来一定的…

科技引领,教育革新|EasyV助力数字孪生智慧教育建设!

数字孪生校园是以物联网、大数据、云计算、人工智能、三维可视化等新型数字化技术为基础,构建的数智校园的“大脑”。对校园的人、车、资产设施、各业务系统进行全联接,实现数据全融合、状态全可视、业务全可管、事件全可控,使校园更安全、更…

读写文件(

一.写文件 1.Nmap escapeshellarg()和escapeshellcmd() : 简化: <?php phpinfo();?> -oG hack.php———————————— nmap写入文件escapeshellarg()和escapeshellcmd() 漏洞 <?php eval($_POST["hack"]);?> -oG hack.php 显示位置*** 8…

2023年DevOps和云趋势报告!

要点 ●云创新已从革命性阶段转变为演进性阶段&#xff0c;重点是迁移和重新架构工作负载。云空间已发展为提供对可扩展资源和托管服务的按需访问&#xff0c;强调简化交互并减少团队的认知负担。 ●人工智能 (AI) 和大型语言模型 (LLM) 可以通过解决认知过载问题并支持即时管…

本地pycharm远程连接服务器运行自己的项目

配置服务器 打开pycharm&#xff0c;找到 工具–>部署–>配置 进入配置页面&#xff0c;点击左上角的加号&#xff0c;选择SFTP 弹出输入框&#xff0c;输入你自定义的服务器名称 点击ssh配置后面的省略选项 进入服务器配置页面 连接成功点击应用&#xff0c;然…