基于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 相关文章推荐
浅析Prototype的模板类 Template
Dec 07 Javascript
.net,js捕捉文本框回车键事件的小例子(兼容多浏览器)
Mar 11 Javascript
javascript中 try catch用法
Aug 16 Javascript
input点击后placeholder中的提示消息消失
Jan 15 Javascript
只要1K 纯JS脚本送你一朵3D红色玫瑰
Aug 09 Javascript
clipboard在vue中的使用的方法示例
Oct 19 Javascript
Angular中innerHTML标签的样式不起作用的原因解析
Jun 18 Javascript
vue.js实现图书管理功能
Sep 24 Javascript
Element Dropdown下拉菜单的使用方法
Jul 26 Javascript
nuxt.js服务端渲染中axios和proxy代理的配置操作
Nov 06 Javascript
Vue 解决在element中使用$notify在提示信息中换行问题
Nov 11 Javascript
vue/cli 配置动态代理无需重启服务的方法
May 20 Vue.js
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
攻克CakePHP系列一 连接MySQL数据库
2008/10/22 PHP
PHP imagecreatefrombmp 从BMP文件或URL新建一图像
2012/07/16 PHP
php获得用户ip地址的比较不错的方法
2014/02/08 PHP
纯PHP生成的一个树叶图片画图例子
2014/04/16 PHP
几道坑人的PHP面试题 试试看看你会不会也中招
2014/08/19 PHP
Yii把CGridView文本框换成下拉框的方法
2014/12/03 PHP
php使用pdo连接并查询sql数据库的方法
2014/12/24 PHP
实例分析基于PHP微信网页获取用户信息
2017/11/24 PHP
PHP字符串中抽取子串操作实例分析
2019/06/22 PHP
理解 JavaScript 预解析
2009/10/25 Javascript
Js setInterval与setTimeout(定时执行与循环执行)的代码(可以传入参数)
2010/06/11 Javascript
validator验证控件使用代码
2010/11/23 Javascript
Underscore.js 的模板功能介绍与应用
2012/12/24 Javascript
jquery定时滑出可最小化的底部提示层特效代码
2013/10/02 Javascript
EasyUI在表单提交之前进行验证的实例代码
2016/06/24 Javascript
使用BootStrap实现悬浮窗口的效果
2016/12/13 Javascript
如何实现星星评价(jquery.raty.js插件)
2016/12/21 Javascript
前端构建工具之gulp的语法教程
2017/06/12 Javascript
JS简单添加元素新节点的方法示例
2018/02/10 Javascript
jQuery实现左右滑动的toggle方法
2018/03/03 jQuery
Vue2.2.0+新特性整理及注意事项
2018/08/22 Javascript
Vue高版本中一些新特性的使用详解
2018/09/25 Javascript
jQuery事件绑定和解绑、事件冒泡与阻止事件冒泡及弹出应用示例
2019/05/13 jQuery
vue Tab切换以及缓存页面处理的几种方式
2019/11/05 Javascript
归纳整理Python中的控制流语句的知识点
2015/04/14 Python
详解Python的Django框架中的中间件
2015/07/24 Python
python解决方案:WindowsError: [Error 2]
2016/08/28 Python
Python实现结构体代码实例
2020/02/10 Python
django model object序列化实例
2020/03/13 Python
python MD5加密的示例
2020/10/19 Python
Can a struct inherit from another struct? (结构体能继承结构体吗)
2016/09/25 面试题
小学作文评语大全
2014/04/21 职场文书
五分钟演讲稿
2014/04/30 职场文书
2014年妇幼保健工作总结
2014/12/08 职场文书
2014年妇委会工作总结
2014/12/10 职场文书
分享7个 Python 实战项目练习
2022/03/03 Python