Vue 实现带拖动功能的时间轴

1.效果图

当使用timeline-slider-vue组件时,你可以设置以下属性:

  1. date:用于设置时间轴滑块的初始日期,格式通常为 YYYY-MM-DD。

  2. mask:一个布尔值,用于控制是否显示背景遮罩。

  3. markDate:一个数组,用于标记特定日期,在时间轴上会有相应的标记显示。

  4. lockDate:一个数组,用于锁定日期,当滑动结束时自动跳到指定的日期。

3.js部分

复制代码
环境

node V12.20.0

npm 6.14.8

📦 Install

npm install --save timeline-slider-vue

全局引用

main.js

import TimelineSliderVue from 'timeline-slider-vue'

import 'timeline-slider-vue/lib/timeline-slider-vue.css'

Vue.use(TimelineSliderVue)

🔧 Usage

<TimelineSliderVue>

<div

slot="sliderContent"

slot-scope="scope">

{{ scope.data }}

</div>

</TimelineSliderVue>

使用示例

<template>

<div id="app">

<TimelineSliderVue

:date="date"

:mask="mask"

:mark-date="markDate"

:lock-date="lockDate"

@change="handleChange"

@input="handleInput"

>

<div slot="sliderContent" slot-scope="scope">

{{ scope.data }}

</div>

</TimelineSliderVue>

</div>

</template>

<script>

export default {

data() {

return {

lockDate: [], // 锁定的日期(滑动结束时自动跳到指定的日期)

markDate: [], // 做标记的日期

mask: true,

date: '2022-06-01',

}

},

methods: {

handleInput(value, date) {

console.log('........input', value, date)

},

handleChange(value, date) {

console.log('........change', value, date)

},

},

}

</script>
相关推荐
失忆爆表症22 分钟前
05_UI 组件库集成指南:Shadcn/ui + Tailwind CSS v4
前端·css·ui
小迷糊的学习记录24 分钟前
Vuex 与 pinia
前端·javascript·vue.js
发现一只大呆瓜35 分钟前
前端性能优化:图片懒加载的三种手写方案
前端·javascript·面试
不爱吃糖的程序媛1 小时前
Flutter 与 OpenHarmony 通信:Flutter Channel 使用指南
前端·javascript·flutter
利刃大大1 小时前
【Vue】Element-Plus快速入门 && Form && Card && Table && Tree && Dialog && Menu
前端·javascript·vue.js·element-plus
NEXT061 小时前
AI 应用工程化实战:使用 LangChain.js 编排 DeepSeek 复杂工作流
前端·javascript·langchain
念风零壹1 小时前
AI 时代的前端技术:从系统编程到 JavaScript/TypeScript
前端·ai
光影少年2 小时前
react的hooks防抖和节流是怎样做的
前端·javascript·react.js
小毛驴8502 小时前
Vue 路由示例
前端·javascript·vue.js
发现一只大呆瓜2 小时前
AI流式交互:SSE与WebSocket技术选型
前端·javascript·面试