如何使用 Vuepress
项目结构
├─docs
│ ├─.vuepress --vuepress相关文件路径 (主要配置)
│ │ ├─dist --build 打包生成路径 (自定义)
│ │ ├─nav --导航条配置 (自定义)
│ │ │ └─ zh.js --自定义导航条配置
│ │ ├─plugins --插件配置 (自定义)
│ │ │ └─ pluginsConf.js --自定义插件配置
│ │ ├─sidebar --侧边栏配置 (自定义)
│ │ │ └─ menu.js --自定义侧边栏配置
│ │ ├─public --静态资源存放
│ │ └─config.js --网站必要的配置文件 (主要配置)
│ ├─changelog --自定义日志模块
│ │ └─......
│ ├─docker --自定义Docker模块
│ │ └─......
│ └─guide --自定义指南模块
│ └─......
├─README.md -- 自定义首页信息 (主要配置)
├─.gitignore -- 忽略上传文件
├─deploy.sh -- 自定义打包部署命令行脚本 (主要配置)
├─package.json -- 脚本配置文件 (主要配置)
::: warning 注意区分
Vuerpess 0.x版本和 1.x 版本 依赖下载命令不同
基于 node.js >= 8+ 安装 且项目基于 1.x 版 搭建
如果你的现有项目依赖了 webpack 3.x,推荐使用 Yarn 而不是 npm 来安装 VuePress。因为在这种情形下,npm 会生成错误的依赖树。
:::
全局安装
如果你只是想尝试一下 VuePress,你可以全局安装它:
# 安装
yarn global add vuepress@next # 或者:npm install -g vuepress@next
# 新建一个 markdown 文件
echo '# Hello VuePress!' > README.md
# 开始写作
vuepress dev .
# 构建静态文件
vuepress build .
现有项目
如果你想在一个现有项目中使用 VuePress,同时想要在该项目中管理文档,则应该将 VuePress 安装为本地依赖。作为本地依赖安装让你可以使用持续集成工具,或者一些其他服务(比如 Netlify)来帮助你在每次提交代码时自动部署。
# 将 VuePress 作为一个本地依赖安装
yarn add -D vuepress@next # 或者:npm install -D vuepress@next
# 新建一个 docs 文件夹
mkdir docs
# 新建一个 markdown 文件
echo '# Hello VuePress!' > docs/README.md
# 开始写作
npx vuepress dev docs
配置 package.json
在项目根路径下里执行命令:
# 生成配置 package.json 文件
yarn init
接着,在 package.json 里加一些脚本,如下:
{
"name": "vuepress",
"version": "1.0.0",
"description": "vuepress",
"main": "index.js",
"repository": "https://github.com/P-Sansei/vuepress.git",
"author": "penghe.yu <yph0228@163.com>",
"license": "MIT",
"scripts": {
"dev": "vuepress dev docs",
"build": "vuepress build docs",
"deploy": "deploy.sh"
},
"devDependencies": {
"@vuepress/plugin-back-to-top": "^1.0.0-alpha.47",
"vuepress": "^1.0.0-alpha.48"
}
}
添加好之后,接着执行如下命令添加项目依赖
# 根据 package.json 的配置 生成 node_modules
yarn install
启动测试
# 启动命令
yarn dev
# 生成静态的 HTML 文件,运行
yarn build
部署到 GitHub Pages
在项目根路径下创建 deploy.sh bat文件, 文件配置如下:
#!/usr/bin/env sh
# 确保脚本抛出遇到的错误
set -e
# 生成静态文件
yarn build
# 进入生成的文件夹
cd docs/.vuepress/dist
# 如果是发布到自定义域名
# echo 'www.example.com' > CNAME
git init
git add -A
git commit -m 'deploy'
# 如果发布到 https://<USERNAME>.github.io/<REPO>
git push -f https://github.com/P-Sansei/vuepress.git master:gh-pages
cd -
接着在项目根路径下执行如下命令:
# 部署
yarn deploy
默认情况下,文件将会被生成在 .vuepress/dist,你也可以通过 .vuepress/config.js 中的 dest 字段来修改,生成的文件可以部署到任意的静态文件服务器上
如何使用 Vuepress的更多相关文章
- 通过VuePress管理项目文档(二)
通过vue组件实现跟:Element相似的效果.需要在VuePress网站中将自己的项目中的Vue组件运行结果展示在页面中. 至于如何将组件在VuePress网站中展示请参考:https://segm ...
- 通过VuePress管理项目文档(一)
VuePress 相关链接 完整的Vue组件代码以及完整的文档,仅适用于个人参考学习: 文档预览地址:预览链接 使用VuePress编辑文档的代码访问:组件文档 完整代码:组件代码 Vue组件开发 这 ...
- vuepress 学习心得
vuepress是一个静态网站生成器,在我看来就是写博客和教程的好工具.教程请见官网:https://www.vuepress.cn 安装方法建议局部安装:node8.0以上,新建vue项目,可能会出 ...
- VuePress
VuePress 这篇文章主要是记录自己在使用VuePress过程中所遇到的问题以及如何一步一步的解决问题. 安装vuepress前,请确保你的 Node.js 版本 >= 8 全局安装 # 安 ...
- 超详细动手搭建一个Vuepress站点及开启PWA与自动部署
超详细动手搭建一个Vuepress站点及开启PWA与自动部署 五一之前就想写一篇关于Vuepress的文章,结果朋友结婚就不了了之了. 记得最后一定要看注意事项! Vuepress介绍 官网:http ...
- 在centos7 上部署 vuepress
vuepress是一款十分优秀简洁的文档生成器,可以根据目录下的md文档自动生成对应的html文件,界面简洁大方.每一个由 VuePress 生成的页面都带有预渲染好的 HTML,也因此具有非常好的加 ...
- VuePress从零开始搭建自己的博客
VuePress是什么? VuePress是以Vue驱动的静态网站生成器,是一个由Vue.Vue Router和webpack驱动的单页应用.在VuePress中,你可以使用Markdown编写文档, ...
- 手把手教你使用 VuePress 搭建个人博客
手把手教你使用 VuePress 搭建个人博客 有阅读障碍的同学,可以跳过第一至四节,下载我写好的工具包: git clone https://github.com/zhangyunchencc/vu ...
- vuePress的使用
今天来玩一玩vuePress的使用,用markdown来编辑一个页面网站,这里谈论到了简单使用,细节可以去官网上去查看 开始安装 项目依赖 // package.json { "name&q ...
- 使用laravel快速构建vuepress管理器
使用laravel快速构建vuepress管理器 介绍 刚刚学了下laravel感觉很方便,最近也在用vuepress做个人博客,但是感觉每次写文章管理文章不是特别方便,就使用laravel写了这个v ...
随机推荐
- jq再次封装自己的ajax & js 回调函数 & js方法注释&js 全局屏蔽点击事件及a标签
1.封装成一个独立JS var commonUrl = 'http://xx.xxx.com/'; function http({ url, type = "post", data ...
- 将Maven镜像更换为国内阿里云仓库
1.国内访问maven默认远程中央镜像特别慢 2.用阿里的镜像替代远程中央镜像 3.大部分jar包都可以在阿里镜像中找到,部分jar包在阿里镜像中没有,需要单独配置镜像 换为国内镜像,让你感受飞一般的 ...
- web版文件管理系统 ——文件图标的获取
需求来源:公司需要一个文件的管理系统,方便管理公司文档以及互相传阅以及一些权限控制的便利,其中极小的一块功能点就是现实文件列表里面的图标获取,从网上找图标太麻烦,而且不现实,不可能用户每次上传文件等你 ...
- 关于Maven项目pom.xml文件不报错却有红叉的问题
原因:spring-boot,升级到2.1.5版本,而maven-jar-plugin.version插件默认版本不兼容所以报错,但不影响运行 解决:在<properties></p ...
- Beta冲刺——第十天(补发)
这个作业属于哪个课程 https://edu.cnblogs.com/campus/fzzcxy/2018SE1 这个作业要求在哪里 https://edu.cnblogs.com/campus/fz ...
- 利用python 5分钟制作一款小游戏
1.安装pygame 在命令行cmd中输入:pip install pygame ( 注:如果安装不成功,需要输入:python -m pip install --user --upgrade pip ...
- 2018年第九届蓝桥杯B组(201806-----递增三元组)
给定三个整数数组 A = [A1, A2, - AN], B = [B1, B2, - BN], C = [C1, C2, - CN], 请你统计有多少个三元组(i, j, k) 满足: 1 < ...
- Java并发包源码学习系列:ReentrantLock可重入独占锁详解
目录 基本用法介绍 继承体系 构造方法 state状态表示 获取锁 void lock()方法 NonfairSync FairSync 公平与非公平策略的差异 void lockInterrupti ...
- 记一次多事件绑定中自己给自己设置的坑——click,dblclick,mousedown,mousemove,mouseup
目录 项目综述 需求 问题 猜想 解决 反思 项目综述 在页面中模拟某操作系统的操作界面,提供应用窗口的最大化.最小化.还原等功能 需求 对一个应用窗口标题栏双击使其铺满整个视口,再次双击还原到原来大 ...
- TCP/IP五层模型-应用层-DNS协议
1.定义:域名解析协议,把域名解析成对应的IP地址. 2.分类:①迭代解析:DNS所在服务器若没有可以响应的结果,会向客户机提供其他能够解析查询请求的DNS服务器地址,当客户机发送查询请求时,DNS ...