main.vue 556 B

123456789101112131415161718192021222324252627282930313233
  1. <script>
  2. export default {
  3. name: 'ElTimeline',
  4. props: {
  5. reverse: {
  6. type: Boolean,
  7. default: false
  8. }
  9. },
  10. provide() {
  11. return {
  12. timeline: this
  13. };
  14. },
  15. render() {
  16. const reverse = this.reverse;
  17. const classes = {
  18. 'el-timeline': true,
  19. 'is-reverse': reverse
  20. };
  21. let slots = this.$slots.default || [];
  22. if (reverse) {
  23. slots = slots.reverse();
  24. }
  25. return (<ul class={ classes }>
  26. { slots }
  27. </ul>);
  28. }
  29. };
  30. </script>