Uni-App中的u-datetime-picker时间选择器Demo

目录

前言

对于网页端的推荐阅读:【ElementUI】详细分析DatePicker 日期选择器

事情起因是两个时间选择器同步了,本身是从后端慢慢步入全栈,对此将这个知识点从实战进行提炼

通过Demo进行总结

Demo

用于选择日期和时间的组件,在 Uni-App 框架中很常用,可以配置成多种模式,如日期选择、时间选择、日期时间选择等

以下是实战提炼的Demo:

html 复制代码
<template>
	<view>
		<u-datetime-picker 
			@confirm="dateTimePickerConfirm" 
			@cancel="dateTimePicker = false"
			:show="dateTimePicker" 
			v-model="timeValue"
			ref="datetimePicker"
			mode="datetime"
			closeOnClickOverlay
			:defaultIndex="defaultTimeIndex">
		</u-datetime-picker>

		<u-form-item @click="dateTimePicker = true" label="选择时间:" labelWidth="200rpx">
			<u--input
				v-model="formattedTime"
				prefixIcon="calendar"
				readonly>
			</u--input>
		</u-form-item>
	</view>
</template>

<script>
export default {
	data() {
		return {
			defaultTimeIndex: [], // 默认选中的时间索引,可以为空
			timeValue: Number(new Date()), // 当前时间的时间戳
			dateTimePicker: false, // 控制选择器的显示
			formattedTime: '' // 用于显示格式化后的时间
		}
	},
	methods: {
		formatDate(date) {
			const pad = (num) => (num < 10 ? '0' + num : num);

			const year = date.getFullYear();
			const month = pad(date.getMonth() + 1);
			const day = pad(date.getDate());
			const hours = pad(date.getHours());
			const minutes = pad(date.getMinutes());
			const seconds = pad(date.getSeconds());

			return `${year}-${month}-${day} ${hours}:${minutes}:${seconds}`;
		},
		dateTimePickerConfirm(e) {
			this.dateTimePicker = false;
			const date = new Date(e.value);
			this.formattedTime = this.formatDate(date);
		}
	}
}
</script>

对应的解读如下:

  • show :控制选择器的显示状态。
  • v-model :绑定当前选中的时间值
  • mode :设置为 datetime,表示选择日期和时间
  • closeOnClickOverlay: 设置为 true,表示点击遮罩时关闭选择器。
  • @confirm :事件在确认选择时间时触发
  • @cancel :事件在取消选择时触发

对应的界面如下所示:

本文针对的是uni-app中的时间选择器:u-datetime-picker 官网解读

官网同样还有其他花里胡哨正常的选择:

相关推荐
小徐_23332 天前
Wot UI 2.2.0 发布:Button 新增 subtle,VideoPreview 预览体验继续增强
前端·微信小程序·uni-app
宸翰3 天前
解决 uni-app App 端 vue-i18n 占位符丢失:封装跨端可用的 tf 格式化方法
前端·vue.js·uni-app
时光足迹4 天前
uni-app 视频通话实战:康复师与患者视频问诊的 6 个致命 Bug 与解决方案
android·ios·uni-app
时光足迹4 天前
腾讯云 TRTC UniApp SDK 从入门到上线
前端·vue.js·uni-app
时光足迹4 天前
uni-app 里把加密视频嵌入页面播放?我分析了 4 种方案,只有 1 种接近完美
前端·vue.js·uni-app
时光足迹4 天前
JPush UniApp UTS 插件完全参考手册:API、事件与厂商通道一网打尽
vue.js·ios·uni-app
时光足迹4 天前
极光推送全攻略(下):uni-app 代码实现与 iOS 排查实战
vue.js·ios·uni-app
时光足迹4 天前
极光推送全攻略(上):被iOS证书折磨了三天,我写了一份前端也能看懂的避坑指南
前端·ios·uni-app
spmcor6 天前
身份证读卡“无感登录”方案实践:从手动点击到自动检测
uni-app
PedroQue996 天前
uni-router v1.8.0新增冷启动守卫补执行
前端·uni-app