vant 组件,时间选择器的应用 van-datetime-picker

如图, 点击箭头弹出时间选择器, 选完时间后显示在页面

 

html代码

 

<van-field
        class="xx"
        clickable
        name="datetimePicker"
        label="拜访时间"
        placeholder="请选择拜访时间"
        @click="choseTime"
        input-align="right"
        right-icon="arrow"
        :value="visitTime"
        :rules="[{ required: true, message: '' }]"
        readonly
      />


      <van-popup v-model="showPicker" position="bottom">
        <van-datetime-picker
          @cancel="cancel"
          @confirm="onConfirm"
          v-model="currentDate"
          type="datetime"
          :min-date="minDate"
          :max-date="maxDate"
        />
      </van-popup>

 

js代码

data(){

 visitTime: "", 
 showPicker: false,
 minDate: "",
 maxDate: "",
 currentDate: new Date(),

},



methods:{

   onConfirm() {

      this.showPicker = false;

      // this.currentDate是选中的时间,赋值给date
      var date = this.currentDate;
      var seperator1 = "-";
      var seperator2 = ":";
      var month = date.getMonth() + 1;
      var strDate = date.getDate();
      if (month >= 1 && month <= 9) {
        month = "0" + month;
      }
      if (strDate >= 0 && strDate <= 9) {
        strDate = "0" + strDate;
      }
      var h = date.getHours().toString().padStart(2, "0");
      var m = date.getMinutes().toString().padStart(2, "0");

      this.currentdate =
        date.getFullYear() +
        seperator1 +
        month +
        seperator1 +
        strDate +
        " " +
        h +
        seperator2 +
        m;  

     //把格式化后的日期赋值给visitTime,就会显示到页面
      this.visitTime = this.currentdate;
    },
    cancel() {
      this.showPicker = false;
      this.currentDate = new Date();
    },
    choseTime() {
      this.showPicker = true;
      // 日期选择的最小日期
      this.minDate = new Date();
      //日期选择的最大日期
      this.maxDate = new Date(2031, 11, 1);
    }


}

最后visitTime传参是字符串   

"2023-01-17 17:43"

  • 1
    点赞
  • 6
    收藏
    觉得还不错? 一键收藏
  • 1
    评论
要在Vue2中使用Vant实现时间选择器,需要先安装Vant组件库,然后在Vue组件中引入相关的时间选择器组件。 首先,在命令行中使用以下命令安装Vant: ``` npm install vant@next -S ``` 然后在Vue组件中引入相关的时间选择器组件,例如: ```vue <template> <div> <van-popup v-model="showPicker" position="bottom"> <van-datetime-picker ref="picker" type="datetime" :min-date="minDate" :max-date="maxDate" :value="currentDate" @confirm="onConfirm" /> </van-popup> <van-button type="primary" @click="showPicker = true">选择时间</van-button> </div> </template> <script> export default { data() { return { showPicker: false, currentDate: new Date(), minDate: new Date(2010, 0, 1), maxDate: new Date(2022, 11, 31), }; }, methods: { onConfirm(value) { this.currentDate = value; this.showPicker = false; }, }, }; </script> ``` 在上面的代码中,我们使用了Vant的`van-popup`组件来实现时间选择器的弹出框。我们设置了`position`为`bottom`,表示弹出框从底部弹出。我们还使用了`v-model`来控制弹出框的显示与隐藏。 在弹出框中,我们使用了`van-datetime-picker`组件来实现时间选择器。我们设置了组件的`type`为`datetime`,表示选择的是日期和时间。我们还设置了`min-date`和`max-date`来限制可选的时间范围。我们使用了`value`来设置当前的时间值。当用户点击确认按钮时,会触发`@confirm`事件,我们在`onConfirm`方法中将选择的时间值赋给`currentDate`,并将弹出框隐藏起来。 最后,我们在页面上放置了一个按钮,当用户点击该按钮时,弹出框会从底部弹出,让用户可以选择时间。 以上就是使用Vant实现时间选择器的基本步骤。
评论 1
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值