UNPKG

vue2-datepick-fork

Version:

vue2-datepick-fork

76 lines (51 loc) 1.95 kB
import CalendarMain from '../components/calendarMain.vue' import { mergeOptions } from './util' import '../css/calendar.scss' let Calendar = {}; Calendar.install = function (Vue) { let t = new Date(); Vue.prototype.$calendar = {} let CalendarMainCom = Vue.extend(CalendarMain) let instance = new CalendarMainCom({ el: document.createElement('div') }) document.body.appendChild(instance.$el); Vue.prototype.$calendar.show = (settings={})=>{ instance.show = true; let d = '' //传入日期,或者已经有选中的日期,就会是初始值 let date = settings.date||instance.date; if(date){ try{ d = date.split('-') }catch (e){ console.log(e); let time = new Date() d = [time.getFullYear(),time.getMonth()+1,time.getDate()] } }else{ let time = new Date() d = [time.getFullYear(),time.getMonth()+1,time.getDate()] } if(settings.year){ console.log(d) if(d[0]<settings.year[0]||d[1]>settings.year[1]){ d[0] = settings.year[0] } } [settings.curYear,settings.curMonth,settings.curDay] = d; mergeOptions(instance, settings) console.log(instance) } Vue.prototype.$calendar.hide = ()=>{ instance.show = false } Vue.prototype.$calendar.getDate = ()=>{ return { year:instance.year||(new Date).getFullYear(), month:instance.month||((new Date).getMonth()+1), day:instance.day||(new Date).getDay() } } } export default Calendar