tnuiv3p-tn-time-line

1.0.5 • Public • Published

图鸟 UI vue3 uniapp Plugins - 时间轴

TuniaoUI vue3 uniapp

Tuniao UI vue3官方仓库

该组件用于展示与时间相关的信息,如日志、签到记录等。

安装

npm install tnuiv3p-tn-time-line

组件位置

tnuiv3p-tn-timeline/time-line.vue
tnuiv3p-tn-timeline/time-line-item.vue
tnuiv3p-tn-timeline/time-line-data.vue

平台差异说明

App(vue) H5 微信小程序 支付宝小程序 ...
适配中

基础使用

TnTimeLineData组件中自定义当前事件节点的内容,节点的内容放在默认的插槽中

使用TnTimeLineItem包裹TnTimeLineData组件,该组件可以设置大节点的标题信息,也可以通过slot="title"插槽自定义标题内容

使用TnTimeLine包裹着全部TnTimeLineItem节点

<script setup lang="ts">
import TnTimeLine from 'tnuiv3p-tn-time-line/time-line.vue'
import TnTimeLineItem from 'tnuiv3p-tn-time-line/time-line-item.vue'
import TnTimeLineData from 'tnuiv3p-tn-time-line/time-line-data.vue'

interface TimeLineDataItem {
  date?: string
  version?: string
  content: string
}

interface TimeLineData {
  month: string
  icon?: string
  data: TimeLineDataItem[]
}

// 时间轴数据
const timeLineData: TimeLineData[] = [
  {
    month: '2023-07',
    icon: 'moments',
    data: [
      {
        date: '1',
        version: '1.0.0',
        content:
          '图鸟科技,图鸟UI vue3 uniapp版本全新发布,欢迎各位开发者进行使用',
      },
      {
        content:
          '图鸟科技,图鸟UI vue3 uniapp版本全新发布,欢迎各位开发者进行使用',
      },
    ],
  },
  {
    month: '2023-08',
    icon: 'creative',
    data: [
      {
        content:
          '图鸟科技,图鸟UI vue3 uniapp版本全新发布,欢迎各位开发者进行使用',
      },
      {
        date: '2',
        version: '1.0.0',
        content:
          '图鸟科技,图鸟UI vue3 uniapp版本全新发布,欢迎各位开发者进行使用',
      },
    ],
  },
]
</script>

<template>
  <view class="content">
    <TnTimeLine>
      <TnTimeLineItem
        v-for="(item, index) in timeLineData"
        :key="index"
        :title="item.month"
        :title-icon="item.icon !== undefined ? item.icon : ''"
      >
        <TnTimeLineData
          v-for="(dataItem, dataIndex) in item.data"
          :key="dataIndex"
        >
          <view
            v-if="dataItem?.date"
            class="time-line__title tn-flex justify-between items-center tn-gray-dark_text"
          >
            <view class="date">{{ dataItem?.date || '' }}</view>
            <view class="version">{{ dataItem?.version || '' }}</view>
          </view>
          <view class="time-line__data">
            {{ dataItem.content }}
          </view>
        </TnTimeLineData>
      </TnTimeLineItem>
    </TnTimeLine>
  </view>
</template>

<style lang="scss" scoped>
.content {
  position: relative;
  width: 100%;
  padding: 30rpx;

  .time-line {
    &__title {
      font-size: 32rpx;
      margin-bottom: 20rpx;
    }
  }
}
</style>

API

TnTimeLine Props

属性名 说明 类型 默认值 可选值
show-line 显示竖线 Boolean true false

TnTimeLine Slots

插槽名 说明 子标签
default 时间节点 TnTimeLineItem

TnTimeLineItem Props

属性名 说明 类型 默认值 可选值
title 标题 String - -
title-icon 标题icon String - 图标有效值
dot-bg-color 左边小点背景,可以使用图鸟内置的背景色、hex、rgb、rgba String - -
dot-text-color 左边小点字体颜色,支持图鸟内置的颜色值、hex、rgb、rgba String - -

TnTimeLineItem Emits

事件名 说明 类型
click item点击事件 () => void

TnTimeLineItem Slots

插槽名 说明 子标签
default 时间节点数据 TnTimeLineData
title 自定义标题数据 -

TnTimeLineData Props

属性名 说明 类型 默认值 可选值
dot-icon 节点图标 String circle-fill 图标有效值
dot-color 左边节点点颜色,支持图鸟内置的颜色值、hex、rgb、rgba String - -

TnTimeLineItem Emits

事件名 说明 类型
click itemData点击事件 () => void

TnTimeLineItem Slots

插槽名 说明
default 时间节点数据内容

Package Sidebar

Install

npm i tnuiv3p-tn-time-line

Weekly Downloads

21

Version

1.0.5

License

Apache 2.0

Unpacked Size

24.8 kB

Total Files

24

Last publish

Collaborators

  • tuniao_technology