基于vue-ssr的静态网站生成器VuePress 初体验


Posted in Javascript onApril 17, 2018

什么是VuePress

VuePress由两部分组成:一个基于Vue的轻量级静态网站生成器,以及为编写技术文档而优化的默认主题。 它是为了满足Vue自己的子项目文档的需求而创建的。

VuePress为每一个由它生成的页面提供预加载的html,不仅加载速度极佳,同时对seo非常友好。一旦页面被加载之后,Vue就全面接管所有的静态内容,使其变成一个完全的SPA应用,其他的页面也会在用户使用导航进入的时候来按需加载。

参考官方文档可知该项目有一下特点:

  • 内置markdown(基础功能)
  • 支持PWA
  • 集成了Google Analytics
  • 拥有一套默认主题(风格与(官方文档)[https://vuepress.vuejs.org]一致)
  • 自动生成的GitHub链接和页面编辑链接

快速上手

安装

初始化项目

npm init -y

安装 vuepress,也可以全局安装

npm install -D vuepress

创建文章文件夹

mkdir docs

配置package.json

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

书写

直接在docs文件夹下新建markdown文件即可编辑书写文章

预览

npm run docs:dev

打开 http://localhost:8080/

构建

npm run docs:build

生成的文件默认会在 .vuepress/dist 文件夹下

自定义配置

可以将配置文件写到 .vuepress/config.js 中

添加顶部导航

module.exports = {
 themeConfig: {
  nav: [
   { text: 'Home', link: '/' },
   { text: 'Guide', link: '/guide/' },
   { text: 'External', link: 'https://google.com' },
  ]
 }
}

添加侧边栏

module.exports = {
 themeConfig: {
  sidebar: [
   '/',
   '/page-a',
   ['/page-b', 'Explicit link text']
  ]
 }
}

同时支持分组添加侧边栏 eg:

module.exports = {
 themeConfig: {
  sidebar: [
   {
    title: 'Group 1',
    collapsable: false,
    children: [
     '/'
    ]
   },
   {
    title: 'Group 2',
    children: [ /* ... */ ]
   }
  ]
 }
}

总结

以上所述是小编给大家介绍的基于vue-ssr的静态网站生成器VuePress 初体验 ,希望对大家有所帮助,如果大家有任何疑问请给我留言,小编会及时回复大家的。在此也非常感谢大家对三水点靠木网站的支持!

Javascript 相关文章推荐
Javascript操纵Cookie实现购物车程序
Nov 23 Javascript
jquery mobile changepage的三种传参方法介绍
Sep 13 Javascript
js加入收藏夹代码(兼容ie/ff/op)
May 16 Javascript
浅谈JavaScript字符集
May 22 Javascript
js中class的点击事件没有效果的解决方法
Oct 13 Javascript
解决vue v-for 遍历循环时key值报错的问题
Sep 06 Javascript
微信小程序首页的分类功能和搜索功能的实现思路及代码详解
Sep 11 Javascript
angularJs在多个控制器中共享服务数据的方法
Sep 30 Javascript
JavaScript使用表单元素验证表单的示例代码
Aug 20 Javascript
微信小程序点击列表跳转到对应详情页过程解析
Sep 26 Javascript
通过JS判断网页是否为手机打开
Oct 28 Javascript
微信小程序实现轮播图指示器
Jun 25 Javascript
jQuery实现使用sort方法对json数据排序的方法
Apr 17 #jQuery
jQuery+datatables插件实现ajax加载数据与增删改查功能示例
Apr 17 #jQuery
jQuery实现带右侧索引功能的通讯录示例【附源码下载】
Apr 17 #jQuery
Angular 容器部署的方法
Apr 17 #Javascript
bootstrap中日历范围选择插件daterangepicker的使用详解
Apr 17 #Javascript
jQuery简单判断值是否存在于数组中的方法示例
Apr 17 #jQuery
Vue 项目代理设置的优化
Apr 17 #Javascript
You might like
在PHP中实现Javascript的escape()函数代码
2010/08/08 PHP
解析wamp5下虚拟机配置文档
2013/06/27 PHP
php将session放入memcached的设置方法
2014/02/14 PHP
详解PHP发送邮件知识点
2018/05/06 PHP
PHP常用函数之获取汉字首字母功能示例
2019/10/21 PHP
PHP使用openssl扩展实现加解密方法示例
2020/02/20 PHP
JavaScript延迟加载
2021/03/09 Javascript
javascript级联下拉列表实例代码(自写)
2013/05/10 Javascript
图片动画横条广告带上下滚动可自定义图片、链接等等
2013/10/20 Javascript
javascript陷阱 一不小心你就中招了(字符运算)
2013/11/10 Javascript
JS中判断null、undefined与NaN的方法
2014/03/24 Javascript
AngularJS+Bootstrap实现多文件上传与管理
2016/11/08 Javascript
微信小程序与php 实现微信支付的简单实例
2017/06/23 Javascript
shiro授权的实现原理
2017/09/21 Javascript
基于js 字符串indexof与search方法的区别(详解)
2017/12/04 Javascript
Bootstrap treeview实现动态加载数据并添加快捷搜索功能
2018/01/07 Javascript
node前端模板引擎Jade之标签的基本写法
2018/05/11 Javascript
vue+web端仿微信网页版聊天室功能
2019/04/30 Javascript
jQuery+PHP+Ajax实现动态数字统计展示功能
2019/12/25 jQuery
为react组件库添加typescript类型提示的方法
2020/06/15 Javascript
基于JavaScript实现猜数字游戏代码实例
2020/07/30 Javascript
[47:02]2018DOTA2亚洲邀请赛3月29日 小组赛B组 VP VS paiN
2018/03/30 DOTA
安装Python的web.py框架并从hello world开始编程
2015/04/25 Python
windows上安装Anaconda和python的教程详解
2017/03/28 Python
python实现SOM算法
2018/02/23 Python
python3 pandas 读取MySQL数据和插入的实例
2018/04/20 Python
Python+Selenium使用Page Object实现页面自动化测试
2019/07/14 Python
用Python做一个久坐提醒小助手的示例代码
2020/02/10 Python
python 19个值得学习的编程技巧
2020/08/15 Python
HTML5表格_动力节点Java学院整理
2017/07/11 HTML / CSS
Stefania Mode美国:奢华设计师和时尚服装
2018/01/07 全球购物
导游的职业规划书范文
2013/12/27 职场文书
领导干部作风建设剖析材料
2014/10/11 职场文书
2014年汽车销售工作总结
2014/12/01 职场文书
优秀教师单行材料
2014/12/16 职场文书
初中家长评语大全
2014/12/26 职场文书