1.0.3 • Published 5 years ago

vue-light-timeline v1.0.3

Weekly downloads
463
License
MIT
Repository
github
Last release
5 years ago

vue-light-timeline

A lightweight timeline components for vue2

Travis branch download version license

install

yarn add vue-light-timeline

if you prefer npm:

npm i vue-light-timeline

usage

import Vue from 'vue';
import LightTimeline from 'vue-light-timeline';

Vue.use(LightTimeline);
<template>
  <light-timeline :items='items'></light-timeline>
</template>
<script>
const theme = 'red';
export default {
  data () {
    return {
      items: [
        {
          tag: '2018-01-12',
          content: 'hallo'
        },
        {
          tag: '2018-01-13',
          color: '#dcdcdc',
          type: 'circle',
          content: 'world'
        },
        {
          type: 'star',
          tag: '2018-01-14',
          htmlMode: true,
          content: `<div style="color: ${theme};"> =v = </div>`
        }
      ]
    }
  }
}
</script>
  • slot

Or you can pass slots for each part of the timeline:

<template>
  <light-timeline :items='items'>
    <template slot='tag' slot-scope='{ item }'>
      {{item.date}}
    </template>
    <template slot='symbol' slot-scope='{ item }'>
      <div class="my_icon_class"><i :class="item.class"></i><div>
    </template>
    <template slot='content' slot-scope='{ item }'>
      {{item.content}}
    </template>
  </light-timeline>
</template>
<script>
export default {
  data () {
    return {
      items: [
        {
          tag: '2018-01-12',
          content: 'hallo',
          class: 'fas fa-star'
        },
        {
          tag: '2018-01-13',
          content: 'world',
          class: 'far fa-star'
        },
        {
          tag: '2018-01-14',
          content: 'other',
          class: 'fas fa-star'
        }
      ]
    }
  }
}
</script>

here is example demo and code

Demo

Hei, let's gonna try it online, have fun ~~

Edit vue-light-timeline example

demo screenshot

docs

Attributes

AttributeDescriptionTypeAccepted valuesDefault
itemstimeline content dataArray----

items

AttributeDescriptionTypeAccepted valuesDefault
tagitem tagString----
contentitem contentString----
htmlModeoutput real HTML as contentBoolean--false
typepoint typeStringcircle, starcircle
colorpoint colorStringpurple,orange,yellow,or hex colors RGB colors so on...purple

slot

  • tag: slot='tag' replace the default tag
  • symbol: slot='symbol' replace the default icon
  • content: slot='content' replace the default content

Attributes

参数说明类型可选值默认值
itemstimeline 需要展示的数据Array----

items

参数说明类型可选值默认值
tagitem 标签(可选)String----
contentitem 内容String----
htmlMode是否HTML字串Boolean--false
typepoint 类型Stringcircle, starcircle
colorpoint 颜色Stringpurple,orange,yellow,or hex colors RGB colors so on...purple

slot 插槽

  • tag: slot='tag' 替换原先的标签
  • symbol: slot='symbol' 替换原先的图标
  • content: slot='content' 替换原先的内容

Contributors

Thanks goes to these wonderful people (emoji key):

hwencc💻 🤔 💡 📖luyilin💻 🤔vratojr💻 🤔 📖

This project follows the all-contributors specification. Contributions of any kind are welcome!

License

MIT License

Copyright (c) 2017-present, hwen hwenleung@gmail.com