UNPKG

vue3-select-linkage

Version:

vue3 下拉框联动组件

2 lines 5.41 kB
(function(e,t){"object"===typeof exports&&"object"===typeof module?module.exports=t(require("vue")):"function"===typeof define&&define.amd?define([],t):"object"===typeof exports?exports["vue3-select-linkage"]=t(require("vue")):e["vue3-select-linkage"]=t(e["Vue"])})("undefined"!==typeof self?self:this,(function(e){return function(e){var t={};function n(r){if(t[r])return t[r].exports;var c=t[r]={i:r,l:!1,exports:{}};return e[r].call(c.exports,c,c.exports,n),c.l=!0,c.exports}return n.m=e,n.c=t,n.d=function(e,t,r){n.o(e,t)||Object.defineProperty(e,t,{enumerable:!0,get:r})},n.r=function(e){"undefined"!==typeof Symbol&&Symbol.toStringTag&&Object.defineProperty(e,Symbol.toStringTag,{value:"Module"}),Object.defineProperty(e,"__esModule",{value:!0})},n.t=function(e,t){if(1&t&&(e=n(e)),8&t)return e;if(4&t&&"object"===typeof e&&e&&e.__esModule)return e;var r=Object.create(null);if(n.r(r),Object.defineProperty(r,"default",{enumerable:!0,value:e}),2&t&&"string"!=typeof e)for(var c in e)n.d(r,c,function(t){return e[t]}.bind(null,c));return r},n.n=function(e){var t=e&&e.__esModule?function(){return e["default"]}:function(){return e};return n.d(t,"a",t),t},n.o=function(e,t){return Object.prototype.hasOwnProperty.call(e,t)},n.p="",n(n.s="fb15")}({"1b62":function(e,t,n){},"1db3":function(e,t,n){"use strict";n("1b62")},8875:function(e,t,n){var r,c,o;(function(n,u){c=[],r=u,o="function"===typeof r?r.apply(t,c):r,void 0===o||(e.exports=o)})("undefined"!==typeof self&&self,(function(){function e(){var t=Object.getOwnPropertyDescriptor(document,"currentScript");if(!t&&"currentScript"in document&&document.currentScript)return document.currentScript;if(t&&t.get!==e&&document.currentScript)return document.currentScript;try{throw new Error}catch(s){var n,r,c,o=/.*at [^(]*\((.*):(.+):(.+)\)$/gi,u=/@([^@]*):(\d+):(\d+)\s*$/gi,l=o.exec(s.stack)||u.exec(s.stack),i=l&&l[1]||!1,a=l&&l[2]||!1,f=document.location.href.replace(document.location.hash,""),d=document.getElementsByTagName("script");i===f&&(n=document.documentElement.outerHTML,r=new RegExp("(?:[^\\n]+?\\n){0,"+(a-2)+"}[^<]*<script>([\\d\\D]*?)<\\/script>[\\d\\D]*","i"),c=n.replace(r,"$1").trim());for(var p=0;p<d.length;p++){if("interactive"===d[p].readyState)return d[p];if(d[p].src===i)return d[p];if(i===f&&d[p].innerHTML&&d[p].innerHTML.trim()===c)return d[p]}return null}}return e}))},"8bbf":function(t,n){t.exports=e},fb15:function(e,t,n){"use strict";if(n.r(t),"undefined"!==typeof window){var r=window.document.currentScript,c=n("8875");r=c(),"currentScript"in document||Object.defineProperty(document,"currentScript",{get:c});var o=r&&r.src.match(/(.+\/)[^/]+\.js(\?.*)?$/);o&&(n.p=o[1])}var u=function(){return u=Object.assign||function(e){for(var t,n=1,r=arguments.length;n<r;n++)for(var c in t=arguments[n],t)Object.prototype.hasOwnProperty.call(t,c)&&(e[c]=t[c]);return e},u.apply(this,arguments)};var l=n("8bbf");const i=Object(l["withScopeId"])("data-v-97795112");Object(l["pushScopeId"])("data-v-97795112");const a={class:"select"},f={class:"select-menus"};Object(l["popScopeId"])();const d=i((function(e,t,n,r,c,o){return Object(l["openBlock"])(),Object(l["createBlock"])("div",a,[Object(l["createVNode"])("div",f,[(Object(l["openBlock"])(!0),Object(l["createBlock"])(l["Fragment"],null,Object(l["renderList"])(e.columns,(t,n)=>Object(l["withDirectives"])((Object(l["openBlock"])(),Object(l["createBlock"])("select",{"onUpdate:modelValue":t=>e.selectValue[n]=t,key:n,onChange:t=>e.itemClick(t,n)},[(Object(l["openBlock"])(!0),Object(l["createBlock"])(l["Fragment"],null,Object(l["renderList"])(t,t=>(Object(l["openBlock"])(),Object(l["createBlock"])("option",{key:t[e.fieldNames.value],value:t},Object(l["toDisplayString"])(t[e.fieldNames.label]),9,["value"]))),128))],40,["onUpdate:modelValue","onChange"])),[[l["vModelSelect"],e.selectValue[n]]])),128))])])}));var p=Object(l["defineComponent"])({name:"VSelect",props:{options:{type:Array,default:function(){return[]}},value:{type:Array,default:function(){return[]}},fieldNames:{type:Object,default:function(){return{label:"name",value:"value",children:"children"}}}},setup:function(e,t){var n=Object(l["ref"])([]),r=Object(l["reactive"])([]),c=Object(l["ref"])(e.value||[]),o=Object(l["ref"])(e.fieldNames),u=Object(l["ref"])(e.options||[]);Object(l["watch"])(c,(function(e){console.log(e),t.emit("update:value",e),t.emit("change",e)}),{deep:!0});var i=function(t,c,u){var l;if(void 0===u&&(u=e.options),u.length)for(var a=0,f=u;a<f.length;a++){var d=f[a];if(d[o.value.value]===t){n.value[c]=u,r[c]=d;break}(null===(l=d[o.value.children])||void 0===l?void 0:l.length)&&i(t,c,d[o.value.children])}},a=function(e){if(e.length)for(var t=0;t<e.length;t++)i(e[t],t)},f=function(e,t){var r,u=e.target,l=n.value[t][u.selectedIndex];c.value[t]=l[o.value.value],c.value.length=t+1,(null===(r=l[o.value["children"]])||void 0===r?void 0:r.length)?(n.value[t+1]=l[o.value["children"]],n.value.length=t+2):n.value.length=t+1};return c.value.length&&a(c.value),Object(l["watch"])(u,(function(){var e;(null===(e=u.value)||void 0===e?void 0:e.length)&&(n.value[0]=u.value)}),{deep:!0}),{columns:n,selectValue:r,itemClick:f}}});n("1db3");p.render=d,p.__scopeId="data-v-97795112";var s=p;s.install=function(e){e.component(s.name,s)};var v=s,b=[v],m=function(e){b.map((function(t){return e.use(t)}))},j=u({install:m},b);t["default"]=j}})})); //# sourceMappingURL=vue3-select-linkage.umd.min.js.map