VuePress搭建组件库+文档(三)

成果:

步骤:

1.先写疾速抉择工夫的组件
docs/.vuepress/components/FastTimeButton.vue

<template><ButtonGroup>  <Button     v-for="(item,index) in value"    :key="index"    @click="changeTime(item)"    :style="lightValue === item ? 'color:#2b85ec' : ''"    type="text">      {{allTimeSelect[item]}}  </Button></ButtonGroup></template><script>import moment from 'moment';export default {  name: "FastTimeButton",  props: {    value: {      // 展现哪些值 一天前 三天前 七天前...      type: Array,      default: () => [1,3,7,30,90,180]    },    defaultValue: {      // 默认选中哪个      type: Number,      default: () => 1 // 1示意1天前    },    format: {      //  返回的工夫格局      type: String,      default: () => 'YYYY-MM-DD'    }  },  data() {    return {      lightValue: 1,      allTimeSelect: {        1:'昨天',        3:'最近3天',        7:'最近一周',        30:'最近一个月',        90:'最近三个月',        180:'最近半年',      }    };  },  created() {    this.lightValue = this.defaultValue;    this.changeTime(this.defaultValue);  },  methods: {    changeTime(item) {      this.lightValue = item;      this.$emit('clickTime', [moment().subtract(item, 'days').format(this.format),  moment().format(this.format)])    }  }};</script>

2.写文档
docs/info/fasttimebutton.md

md能够直写vue代码并且能够间接解析
2-1md里能够间接调用组件

<div class="test">   <DatePicker      type="datetimerange"      format="yyyy-MM-dd"      v-model="time"      :value="time"      placeholder="工夫"      style="width: 200px">  </DatePicker>  <FastTimeButton  @clickTime="changeTime1"> </FastTimeButton></div><script>  export default {    data() {      return {        time: []      }    },    methods: {      changeTime1(value) {        this.time = value;      },    },  }</script>

页面成果

2-2页面贴怎么调用的源码
须要再md把调用代码再写一点同时用`包起来

页面成果:

2-3写属性和办法

页面成果: