uni-app 日期控件,包含年月日,时分秒

发布于 1周前 作者 bupafengyu 来自 Uni-App

uni-app 日期控件,包含年月日,时分秒

3 回复

多时间粒度的时间选择器组件:https://ext.dcloud.net.cn/plugin?id=220



<label>开始时间</label> <input type='text' class="font mui-left" placeholder="请选择" id="datMONTH" readonly="true">
document.getElementById('liMONTH').addEventListener('tap',function () { var datePicker=new mui.DtPicker({ type:'date',//若只显示年月日,类型为date, }); datePicker.show(function(selectItems){ $("#datMONTH").val(selectItems); }); }) <link rel="stylesheet" href="../css/mui.picker.min.css"> <link rel="stylesheet" href="../css/mui.poppicker.css"> <script src="../js/mui.picker.min.js"></script> <script src="../js/mui.poppicker.js"></script> picker要用picker.min.css 不要用picker.css 不然没效果 不知道官方文档怎么了 。。。。 抬走 下一位

在uni-app中,你可以使用<picker>组件来实现一个包含年月日、时分秒的日期控件。以下是一个简单的代码示例,展示了如何创建和使用这个日期控件。

首先,在页面的.vue文件中,添加以下代码:

<template>
  <view class="container">
    <view class="picker-view">
      <picker mode="datetime" :value="dateValue" @change="bindDateChange">
        <view class="picker">
          {{ dateValue | formatDateTime }}
        </view>
      </picker>
    </view>
  </view>
</template>

<script>
export default {
  data() {
    return {
      dateValue: '', // 初始化日期值,为空字符串表示当前时间
    };
  },
  methods: {
    bindDateChange(e) {
      this.dateValue = e.detail.value;
    },
    formatDateTime(value) {
      const date = new Date(value);
      const year = date.getFullYear();
      const month = (date.getMonth() + 1).toString().padStart(2, '0');
      const day = date.getDate().toString().padStart(2, '0');
      const hours = date.getHours().toString().padStart(2, '0');
      const minutes = date.getMinutes().toString().padStart(2, '0');
      const seconds = date.getSeconds().toString().padStart(2, '0');
      return `${year}-${month}-${day} ${hours}:${minutes}:${seconds}`;
    },
  },
  onLoad() {
    // 初始化日期值为当前时间
    const now = new Date();
    this.dateValue = `${now.getFullYear()}-${(now.getMonth() + 1).toString().padStart(2, '0')}-${now.getDate().toString().padStart(2, '0')} ${now.getHours().toString().padStart(2, '0')}:${now.getMinutes().toString().padStart(2, '0')}:${now.getSeconds().toString().padStart(2, '0')}`;
  },
};
</script>

<style>
.container {
  padding: 20px;
}
.picker-view {
  margin-top: 20px;
}
.picker {
  padding: 10px;
  background-color: #f8f8f8;
  border: 1px solid #ddd;
  text-align: center;
}
</style>

在这个示例中:

  1. <picker>组件的mode属性设置为datetime,表示这是一个日期时间选择器。
  2. :value绑定到dateValue,用于存储选择器的值。
  3. @change事件绑定到bindDateChange方法,当选择器值改变时更新dateValue
  4. formatDateTime方法用于格式化日期时间字符串,确保日期和时间部分都是两位数。
  5. onLoad生命周期钩子中,初始化dateValue为当前时间。

这样,你就可以在uni-app中使用一个包含年月日、时分秒的日期控件了。

回到顶部