UNPKG

cc-element-components

Version:

该项目是基于`element-plus`二次封装组件,使用的技术栈为`vue3` + `typescript` + `element-plus`。在此项目当中,我们会基于`element-plus`的组件库已有组件封装如下组件: - 图标选择器 - 时间选择器 - 城市选择器 - 省市区选择器 - 通知菜单 - 趋势标记 - 评论 - 数据列表 - 数值统计 - 倒计时 - 分割面板 - 时间轴 - 弹框拓展 - 进度条拓展 - 导航菜单拓展 - 可配置项表格 - 可配置项表单 - 日历

2 lines (1 loc) 1.76 kB
(function(e,d){typeof exports=="object"&&typeof module!="undefined"?module.exports=d(require("vue")):typeof define=="function"&&define.amd?define(["vue"],d):(e=typeof globalThis!="undefined"?globalThis:e||self,e.index=d(e.Vue))})(this,function(e){"use strict";const d={style:{display:"flex"}},f={style:{"margin-right":"20px"}},p=e.defineComponent({props:{startPlaceholder:{type:String,default:"\u8BF7\u9009\u62E9\u5F00\u59CB\u65E5\u671F"},endPlaceholder:{type:String,default:"\u8BF7\u9009\u62E9\u7ED3\u675F\u65E5\u671F"},disableToday:{type:Boolean,default:!0}},emits:["startChange","endChange"],setup(n,{emit:s}){const m=n;let l=e.ref(null),a=e.ref(null),i=e.ref(!0),h=t=>{if(m.disableToday)return t.getTime()<Date.now()-1e3*60*60*24},D=t=>{if(l.value)return t.getTime()<l.value.getTime()+1e3*60*60*24};return e.watch(()=>l.value,t=>{t?(s("startChange",t),i.value=!1):(i.value=!0,a.value=null)}),e.watch(()=>a.value,t=>{t&&s("endChange",{startDate:l.value,endDate:t})}),(t,r)=>{const u=e.resolveComponent("el-date-picker");return e.openBlock(),e.createElementBlock("div",d,[e.createElementVNode("div",f,[e.createVNode(u,e.mergeProps({modelValue:e.unref(l),"onUpdate:modelValue":r[0]||(r[0]=o=>e.isRef(l)?l.value=o:l=o),type:"date",placeholder:n.startPlaceholder,disabledDate:e.unref(h)},t.$attrs.startOptions),null,16,["modelValue","placeholder","disabledDate"])]),e.createElementVNode("div",null,[e.createVNode(u,e.mergeProps({modelValue:e.unref(a),"onUpdate:modelValue":r[1]||(r[1]=o=>e.isRef(a)?a.value=o:a=o),type:"date",placeholder:n.endPlaceholder,disabled:e.unref(i),disabledDate:e.unref(D)},t.$attrs.endOptions),null,16,["modelValue","placeholder","disabled","disabledDate"])])])}}});var c={install(n){n.component("cc-choose-date",p)}};return c});