基于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 AOP 实现ajax回调函数使用比较方便
Nov 20 Javascript
js定义对象或数组直接量时各浏览器对多余逗号的处理(json)
Mar 05 Javascript
html中的input标签的checked属性jquery判断代码
Sep 19 Javascript
jquery的冒泡事件的阻止与允许(三种实现方法)
Feb 01 Javascript
JS判断两个时间大小的示例代码
Jan 28 Javascript
判断复选框是否被选中的两种方法
Jun 04 Javascript
JS自动倒计时30秒后按钮才可用(两种场景)
Aug 31 Javascript
JS图片轮播与索引变色功能实例详解
Jul 06 Javascript
vue 计时器组件的实现代码
Sep 14 Javascript
解决Vue2.0 watch对象属性变化监听不到的问题
Sep 11 Javascript
移动端底部导航固定配合vue-router实现组件切换功能
Jun 13 Javascript
VUE实现自身整体组件销毁的示例代码
Jan 13 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版(2)
2006/10/09 PHP
PHP 木马攻击防御技巧
2009/06/13 PHP
php下安装配置fckeditor编辑器的方法
2011/03/02 PHP
跟我学Laravel之配置Laravel
2014/10/15 PHP
php ajax confirm 删除实例详解
2019/03/06 PHP
window.showModalDialog使用手册
2007/01/11 Javascript
Firefox window.close()的使用注意事项
2009/04/11 Javascript
jQuery 加上最后自己的验证
2009/11/04 Javascript
基于jQuery的图片剪切插件
2011/08/03 Javascript
jquery text(),val(),html()方法区别总结
2013/11/04 Javascript
Javascript使用SWFUpload进行多文件上传
2016/11/16 Javascript
video.js使用改变ui过程
2017/03/05 Javascript
详解angularJs模块ui-router之状态嵌套和视图嵌套
2017/04/28 Javascript
手把手教你搭建ES6的开发运行环境
2017/07/11 Javascript
详解使用Vue Router导航钩子与Vuex来实现后退状态保存
2017/09/11 Javascript
BootStrap Table实现server分页序号连续显示功能(当前页从上一页的结束序号开始)
2017/09/12 Javascript
浅谈vue路径优化之resolve
2017/10/13 Javascript
解读vue生成的文件目录结构及说明
2017/11/27 Javascript
Vue在页面右上角实现可悬浮/隐藏的系统菜单
2018/05/04 Javascript
微信小程序实现二维码签到考勤系统
2020/01/16 Javascript
js实现随机点名器精简版
2020/06/29 Javascript
tensorflow识别自己手写数字
2018/03/14 Python
使用python读取csv文件快速插入数据库的实例
2018/06/21 Python
Python实现的txt文件去重功能示例
2018/07/07 Python
解决Python print输出不换行没空格的问题
2018/11/14 Python
python使用Plotly绘图工具绘制气泡图
2019/04/01 Python
tensorflow安装成功import tensorflow 出现问题
2020/04/16 Python
解决python中0x80072ee2错误的方法
2020/07/19 Python
python openpyxl模块的使用详解
2021/02/25 Python
Css3实现无缝滚动防抖
2020/09/14 HTML / CSS
美国派对用品及装饰品网上商店:Shindigz
2016/07/30 全球购物
《美丽的公鸡》教学反思
2014/02/25 职场文书
销售会计岗位职责
2014/03/15 职场文书
小学校长开学致辞
2015/07/29 职场文书
辞职信怎么写?
2019/05/21 职场文书
python数字图像处理:图像的绘制
2022/06/28 Python