vuux
Version:
Vue3 Nuxt3 Nuxt4 组件库
2 lines (1 loc) • 1.22 kB
JavaScript
;const e=require("vue"),m=require("./node.vue.cjs"),b=require("./hook/useTree.cjs"),k={class:"app-tree"},x=e.defineComponent({name:"Tree",__name:"index",props:{modelValue:{},data:{},label:{default:"label"},value:{default:"id"},children:{default:"children"},disabled:{default:"disabled"},checkbox:{type:Boolean},defaultExpandAll:{type:Boolean},returnParentData:{type:Boolean,default:!0},line:{type:Boolean}},emits:["update:modelValue"],setup(r,{expose:o,emit:c}){const t=r,u=c,{flatTreeData:a,nodeKey:n,setSelect:d,updateSelect:s,clearAllSelect:p,expandToSelected:i,expandByKeys:f,collapseAll:_}=b.useTree(t,u);return o({setSelect:d,clearAllSelect:p,collapseAll:_,expandByKeys:f,expandToSelected:i}),(y,B)=>(e.openBlock(),e.createElementBlock("div",k,[(e.openBlock(!0),e.createElementBlock(e.Fragment,null,e.renderList(e.unref(a).filter(l=>l.level===0),l=>(e.openBlock(),e.createBlock(m,{key:l[e.unref(n)],node:l,line:t.line,flatTreeData:e.unref(a),nodeKey:e.unref(n),checkbox:t.checkbox,returnParentData:t.returnParentData,labelField:t.label,onUpdateSelect:e.unref(s)},null,8,["node","line","flatTreeData","nodeKey","checkbox","returnParentData","labelField","onUpdateSelect"]))),128))]))}});module.exports=x;