项目结构

├─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的更多相关文章

  1. 通过VuePress管理项目文档(二)

    通过vue组件实现跟:Element相似的效果.需要在VuePress网站中将自己的项目中的Vue组件运行结果展示在页面中. 至于如何将组件在VuePress网站中展示请参考:https://segm ...

  2. 通过VuePress管理项目文档(一)

    VuePress 相关链接 完整的Vue组件代码以及完整的文档,仅适用于个人参考学习: 文档预览地址:预览链接 使用VuePress编辑文档的代码访问:组件文档 完整代码:组件代码 Vue组件开发 这 ...

  3. vuepress 学习心得

    vuepress是一个静态网站生成器,在我看来就是写博客和教程的好工具.教程请见官网:https://www.vuepress.cn 安装方法建议局部安装:node8.0以上,新建vue项目,可能会出 ...

  4. VuePress

    VuePress 这篇文章主要是记录自己在使用VuePress过程中所遇到的问题以及如何一步一步的解决问题. 安装vuepress前,请确保你的 Node.js 版本 >= 8 全局安装 # 安 ...

  5. 超详细动手搭建一个Vuepress站点及开启PWA与自动部署

    超详细动手搭建一个Vuepress站点及开启PWA与自动部署 五一之前就想写一篇关于Vuepress的文章,结果朋友结婚就不了了之了. 记得最后一定要看注意事项! Vuepress介绍 官网:http ...

  6. 在centos7 上部署 vuepress

    vuepress是一款十分优秀简洁的文档生成器,可以根据目录下的md文档自动生成对应的html文件,界面简洁大方.每一个由 VuePress 生成的页面都带有预渲染好的 HTML,也因此具有非常好的加 ...

  7. VuePress从零开始搭建自己的博客

    VuePress是什么? VuePress是以Vue驱动的静态网站生成器,是一个由Vue.Vue Router和webpack驱动的单页应用.在VuePress中,你可以使用Markdown编写文档, ...

  8. 手把手教你使用 VuePress 搭建个人博客

    手把手教你使用 VuePress 搭建个人博客 有阅读障碍的同学,可以跳过第一至四节,下载我写好的工具包: git clone https://github.com/zhangyunchencc/vu ...

  9. vuePress的使用

    今天来玩一玩vuePress的使用,用markdown来编辑一个页面网站,这里谈论到了简单使用,细节可以去官网上去查看 开始安装 项目依赖 // package.json { "name&q ...

  10. 使用laravel快速构建vuepress管理器

    使用laravel快速构建vuepress管理器 介绍 刚刚学了下laravel感觉很方便,最近也在用vuepress做个人博客,但是感觉每次写文章管理文章不是特别方便,就使用laravel写了这个v ...

随机推荐

  1. 【Objective-C】1.oc点语法

    在Java中,我们可以通过"对象名.成员变量名"来访问对象的公共成员变量,这个就称为"点语法".比如: 1.在Student类的第2行定义了一个公共的成员变量a ...

  2. CVE-2017-10271漏洞复现

    漏洞描述 Weblogic的WLS Security组件对外提供webservice服务,其中使用了XMLDecoder来解析用户传入的XML数据,在解析的过程中出现反序列化漏洞,导致可执行任意命令. ...

  3. mysql 提示 vcruntime140_1.dll丢失

    百度网盘:https://pan.baidu.com/s/1vbVexHs1eRfGlnTbr8U53Q 提取码:59tm 将两个文件同时放到路径:C:\Windows\System32 下,运行ba ...

  4. 工具类输出当前ApplicationContext所有被装配的类

    package org.springblade.desk.utils; import org.springframework.beans.BeansException; import org.spri ...

  5. Map集合,Map常用子类

    Map 集合 1,Collection中的集合,元素是孤立的,向季和忠储存的元素采用一个元素方式储存 2,Map中的集合,元素是成对存在的,每个元素中的集合称为双列集合 3,Collection中的集 ...

  6. 基于Let's Encrypt生成免费证书-支持多域名泛域名证书

    目录 客户端 certbot acme.sh 安装acme.sh 1. 自动安装 2. 手动安装 3. 测试收否安装成功 使用acme.sh生成证书 1. HTTP 方式 2. DNS 方式 1. 生 ...

  7. Oracle-序列-存储过程-视图-索引-触发器

    课程介绍 1. 约束(掌握) 2. 序列(掌握) 3. 索引(掌握) 4. 视图(掌握) 5. 存储过程(掌握) 6. 自定义函数(掌握) 7. 触发器(掌握) 数据库对象的命名规则 1.对象名称必须 ...

  8. 30天自制操作系统-day1

    30天自制操作系统(linux环境)--第一天 我是在CentOS的环境上面实现的,使用ubuntu的环境也是类似的 第一步:因为要对二进制文件进行编辑,所以安装二进制编辑器hexedit(当然其他的 ...

  9. 对HTTP请求接口资源下载时间过长的问题分析

    问题描述 我司某产品线有指定业务接口customQuery在线上环境中,与首页一起打开时下载数据的时间明显过长(平均可以达到2s) 注: "与首页一起打开" 的含义是指用户进入WE ...

  10. 感谢 Gridea,让我有动力写作

    1. 真的要感谢 Gridea,让我对写作产生热忱.一直有在各大博客平台输出的习惯,但是都没有持续更新.有的平台广告太多,写不下去.有的平台排版复杂,写文章1个小时,排版要2个小时.所以后面换成了静态 ...