vue-light-timeline
v1.0.3
Published
A lightweight vue timeline components
Downloads
1,583
Maintainers
Readme
vue-light-timeline
A lightweight timeline components for vue2
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 ~~
demo screenshot
docs
Attributes
Attribute | Description | Type | Accepted values | Default ----|------|----|----|---- items | timeline content data | Array | -- | --
items
Attribute | Description | Type | Accepted values | Default ----|------|----|----|---- tag | item tag | String | -- | -- content | item content | String | -- | -- htmlMode | output real HTML as content | Boolean | -- | false type | point type | String | circle, star | circle color | point color | String | purple,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
参数 | 说明 | 类型 | 可选值 | 默认值 ----|------|----|----|---- items | timeline 需要展示的数据 | Array | -- | --
items
参数 | 说明 | 类型 | 可选值 | 默认值 ----|------|----|----|---- tag | item 标签(可选) | String | -- | -- content | item 内容 | String | -- | -- htmlMode | 是否HTML字串 | Boolean | -- | false type | point 类型 | String | circle, star | circle color | point 颜色 | String | purple,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][all-contributors] specification. Contributions of any kind are welcome!
License
Copyright (c) 2017-present, hwen [email protected]