1.在不少的項目中,咱們都會用到日期插件,而後當我在vue中使用bootstrap datetimepicker時發現雙向綁定不起做用了,bootstrap datetimepicker修改的日期不會同步到data中,下面看個人解決方案:vue
<template> <div id="time"> <span class="select-box-title">選擇發送時間:</span> <input class="form-control select-box-input" v-model="time" type="text" id="messageSendTime"> </div> </div> </template> <script> import $ from 'jquery' export default { name: 'time', data () { return { time: '' } }, methods: { dateDefind () { var d, s; var self = this; d = new Date(); s = d.getFullYear() + "-"; //取年份 s = s + (d.getMonth() + 1) + "-";//取月份 s += d.getDate() + " "; //取日期 s += d.getHours() + ":"; //取小時 s += d.getMinutes() + ":"; //取分 s += d.getSeconds(); //取秒 self.time = s; //初始化 $('#messageSendTime').datetimepicker({ startDate: s, minView: "hour", //選擇日期後,不會再跳轉去選擇時分秒 language: 'zh-CN', format: 'yyyy-mm-dd hh:ii:ss', todayBtn: 1, autoclose: 1 }); //當選擇器隱藏時,講選擇框只賦值給data裏面的time $('#messageSendTime').datetimepicker() .on('hide', function (ev) { var value = $("#messageSendTime").val(); self.time = value; }); } }, mounted: function () { this.dateDefind(); } } </script> <style scoped> </style>
總結:其實也就是在datetimepicker的設置裏面添加一個事件,當選擇器hide時,講選擇框的值賦值給data裏面的time。jquery