UNPKG

vuux

Version:

Vue3 Nuxt3 Nuxt4 组件库

2 lines (1 loc) 2.47 kB
"use strict";const e=require("vue"),_=require("./hook/useCascader.cjs"),r=require("@vuux/icons"),v={class:"cascader-icon"},y={key:0,class:"cascader-panel"},E={key:0,class:"is-empty"},V={key:0,class:"cascader-item"},N=["onClick"],g=e.defineComponent({name:"Cascader",__name:"index",props:{data:{default:null},modelValue:{default:""},decollator:{default:"/"},placeholder:{default:"请选择"},last:{type:Boolean},disabled:{type:Boolean},fields:{default:()=>({label:"label",value:"value",children:"children"})},clear:{type:Boolean}},emits:["update:modelValue","change","clear"],setup(m,{emit:p}){const a=m,k=p,s=e.useTemplateRef("cascaderEl"),{openState:d,treeData:f,classNames:h,displayValue:t,handleOpen:i,handleSelectBar:B,handleClear:C}=_.useCascader(a,s,k);return(I,u)=>(e.openBlock(),e.createElementBlock("div",{ref_key:"cascaderEl",ref:s,class:e.normalizeClass(e.unref(h))},[e.createElementVNode("div",{class:"cascader-value",onClick:u[0]||(u[0]=(...l)=>e.unref(i)&&e.unref(i)(...l))},[e.createElementVNode("p",null,e.toDisplayString(e.unref(t)?e.unref(t):a.placeholder),1),e.createElementVNode("div",v,[e.unref(t)?(e.openBlock(),e.createBlock(e.unref(r.Icon),{key:0,name:"Icon9176904",size:13,class:"is-close",onClick:e.withModifiers(e.unref(C),["stop"])},null,8,["onClick"])):e.createCommentVNode("",!0),e.createVNode(e.unref(r.Icon),{name:"Icon6657361",class:e.normalizeClass(["is-arrow",{"is-active":e.unref(d)}])},null,8,["class"])])]),e.createVNode(e.Transition,{name:"slide-up"},{default:e.withCtx(()=>[e.unref(d)?(e.openBlock(),e.createElementBlock("div",y,[!a.data||a.data.length==0?(e.openBlock(),e.createElementBlock("div",E,"暂无数据")):e.createCommentVNode("",!0),(e.openBlock(!0),e.createElementBlock(e.Fragment,null,e.renderList(e.unref(f),(l,c)=>(e.openBlock(),e.createBlock(e.Transition,{key:c,name:"slide-up"},{default:e.withCtx(()=>[l.data.length?(e.openBlock(),e.createElementBlock("div",V,[(e.openBlock(!0),e.createElementBlock(e.Fragment,null,e.renderList(l.data,(n,o)=>(e.openBlock(),e.createElementBlock("div",{key:c+o,class:e.normalizeClass(["item",[{"is-active":l.selectIndex===o}]]),onClick:w=>e.unref(B)(n,o,c,"click")},[e.createElementVNode("span",null,e.toDisplayString(n.label),1),e.withDirectives(e.createVNode(e.unref(r.Icon),{name:"Icon6657361"},null,512),[[e.vShow,n.children&&n.children.length]])],10,N))),128))])):e.createCommentVNode("",!0)]),_:2},1024))),128))])):e.createCommentVNode("",!0)]),_:1})],2))}});module.exports=g;