vant显示日期格式_Vue+Vant ui实现日期时间选择

本文介绍了如何在Vue项目中结合Vant UI库实现日期时间选择功能。首先通过npm安装Vant,然后在main.js中引入并启用。接着详细展示了Vant DatetimePicker组件的使用方法,包括设置初始值、日期范围限制、格式化日期等,并提供了确认选择后的处理逻辑。
摘要由CSDN通过智能技术生成

Vue+Vant ui实现日期时间选择

1、安装Vant ui

npm i vant -S

2、在 main.js 中引入 Vant ui

// 引入vant

import Vant from 'vant'

import 'vant/lib/index.css'

Vue.use(Vant)

3、具体使用Vant DatetimePicker组件详解

title="日期"

is-link

:value="timeValue"

@click="showPopup" />

v-model="currentDate"

type="datetime"

:loading="isLoadingShow"

:min-date="minDate"

:max-date="maxDate"

:formatter="formatter"

@cancel="show = false"

@confirm="confirmPicker"

/>

export default {

data() {

return {

timeValue: '',

show: false,

isLoadingShow: true,

currentDate: new Date(),

minDate: new Date(),

maxDate: new Date(2020, 12, 31),

};

},

created() {

this.getTime(); // 加载页面显示默认时间

},

methods: {

// 显示弹窗

showPopup () {

this.show = true

this.isLoadingShow = true

setTimeout(() => {

this.isLoadingShow = false

}, 500)

},

// 确认选择之后的时间

confirmPicker (val) {

let year = val.getFullYear()

let month = val.getMonth() + 1

let day = val.getDate()

let hour = val.getHours()

let minute = val.getMinutes()

// let second = val.getSeconds()

if (month >= 1 && month <= 9) { month = `0${month}` }

if (day >= 1 && day <= 9) { day = `0${day}` }

if (hour >= 0 && hour <= 9) { hour = `0${hour}` }

if (minute >= 0 && minute <= 9) { minute = `0${minute}` }

// if (second >= 0 && second <= 9) { second = `0${second}` }

this.timeValue = `${year}-${month}-${day} ${hour}:${minute}:00`

console.log(this.timeValue)

this.show = false

},

// 默认显示当前时间

getTime () {

let date = new Date()

let y = date.getFullYear()

let m = date.getMonth() + 1

let d = date.getDate()

let h = date.getHours()

let min = date.getMinutes()

// let s = date.getSeconds()

if (m >= 1 && m <= 9) { m = `0${m}` }

if (d >= 1 && d <= 9) { d = `0${d}` }

if (h >= 0 && h <= 9) { h = `0${h}` }

if (min >= 0 && min <= 9) { min = `0${min}` }

// if (s >= 0 && s <= 9) { min = `0${s}` }

let time = `${y}-${m}-${d} ${h}:${min}:00`

this.timeValue = time

},

// 日期选项格式化函数

formatter (type, value) {

if (type === 'year') {

return `${value}年`

} else if (type === 'month') {

return `${value}月`

} else if (type === 'day') {

return `${value}日`

} else if (type === 'hour') {

return `${value}时`

} else if (type === 'minute') {

return `${value}分`

} else if (type === 'second') {

return `${value}秒`

}

return value

},

}

}

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值