67 lines
1.5 KiB
Vue
67 lines
1.5 KiB
Vue
<template>
|
|
<div class="demo-milestone">
|
|
<tiny-milestone :data="milestoneData" :milestones-status="statusMap">
|
|
<template #top="data">
|
|
<span class="f18 ml50">{{ data.slotScope.status }}</span>
|
|
</template>
|
|
<template #bottom="data">
|
|
<span class="f12">{{ data.slotScope.name }} {{ data.slotScope.time }}</span>
|
|
</template>
|
|
</tiny-milestone>
|
|
</div>
|
|
</template>
|
|
|
|
<script lang="jsx">
|
|
import { Milestone } from '@opentiny/vue'
|
|
|
|
export default {
|
|
components: {
|
|
TinyMilestone: Milestone
|
|
},
|
|
data() {
|
|
return {
|
|
timeActive1: 1,
|
|
normalActive: 2,
|
|
advancedActive: 2,
|
|
statusMap: {
|
|
completed: 'var(--ti-common-color-line-active)',
|
|
doing: '#7ED321',
|
|
back: '#f5222d',
|
|
end: '#faad14',
|
|
cancel: '#d9d9d9'
|
|
},
|
|
milestoneData: [
|
|
{
|
|
name: 'POR1',
|
|
time: '2018-9-7',
|
|
status: 'completed'
|
|
},
|
|
{
|
|
name: 'POR2',
|
|
time: '2018-9-8',
|
|
status: 'completed'
|
|
},
|
|
{ name: 'POR3', time: '2018-9-10', status: 'doing', content: null },
|
|
{
|
|
name: 'POR4',
|
|
time: '2018-9-9',
|
|
status: 'cancel'
|
|
},
|
|
{ name: 'POR5', time: '2018-9-11', status: 'back' },
|
|
{
|
|
name: 'POR6',
|
|
time: '2018-9-9',
|
|
status: 'end'
|
|
}
|
|
]
|
|
}
|
|
}
|
|
}
|
|
</script>
|
|
|
|
<style scoped>
|
|
.demo-milestone ::v-deep .tiny-milestone__description-status {
|
|
margin-top: 4px;
|
|
}
|
|
</style>
|