UNPKG

eeeeeeuuuu-ui

Version:

uView UI,是uni-app生态优秀的UI框架,全面的组件和便捷的工具会让您信手拈来,如鱼得水

12 lines (11 loc) 4.14 kB
require('../../../app.js'); (global["webpackJsonp"]=global["webpackJsonp"]||[]).push([["uview-ui/components/u-select/u-select"],{4235:function(e,t,l){"use strict";l.r(t);var u,i={uPopup:function(){return l.e("uview-ui/components/u-popup/u-popup").then(l.bind(null,"3626"))}},a=function(){var e=this,t=e.$createElement;e._self._c},s=[],n={props:{list:{type:Array,default(){return[]}},border:{type:Boolean,default:!0},value:{type:Boolean,default:!1},cancelColor:{type:String,default:"#606266"},confirmColor:{type:String,default:"#2979ff"},zIndex:{type:[String,Number],default:0},safeAreaInsetBottom:{type:Boolean,default:!1},maskCloseAble:{type:Boolean,default:!0},defaultValue:{type:Array,default(){return[0]}},mode:{type:String,default:"single-column"},valueName:{type:String,default:"value"},labelName:{type:String,default:"label"},childName:{type:String,default:"children"},title:{type:String,default:""},cancelText:{type:String,default:"取消"},confirmText:{type:String,default:"确认"}},data(){return{defaultSelector:[0],columnData:[],selectValue:[],lastSelectIndex:[],columnNum:0,moving:!1}},watch:{value:{immediate:!0,handler(e){e&&setTimeout(()=>this.init(),10)}}},computed:{uZIndex(){return this.zIndex?this.zIndex:this.$u.zIndex.popup}},methods:{pickstart(){this.moving=!0},pickend(){this.moving=!1},init(){this.setColumnNum(),this.setDefaultSelector(),this.setColumnData(),this.setSelectValue()},setDefaultSelector(){this.defaultSelector=this.defaultValue.length==this.columnNum?this.defaultValue:Array(this.columnNum).fill(0),this.lastSelectIndex=this.$u.deepClone(this.defaultSelector)},setColumnNum(){if("single-column"==this.mode)this.columnNum=1;else if("mutil-column"==this.mode)this.columnNum=this.list.length;else if("mutil-column-auto"==this.mode){let e=1,t=this.list;while(t[0][this.childName])t=t[0]?t[0][this.childName]:{},e++;this.columnNum=e}},setColumnData(){let e=[];if(this.selectValue=[],"mutil-column-auto"==this.mode){let t=this.list[this.defaultSelector.length?this.defaultSelector[0]:0];for(let l=0;l<this.columnNum;l++)0==l?(e[l]=this.list,t=t[this.childName]):(e[l]=t,t=t[this.defaultSelector[l]][this.childName])}else"single-column"==this.mode?e[0]=this.list:e=this.list;this.columnData=e},setSelectValue(){let e=null;for(let t=0;t<this.columnNum;t++){e=this.columnData[t][this.defaultSelector[t]];let l={value:e?e[this.valueName]:null,label:e?e[this.labelName]:null};e&&e.extra&&(l.extra=e.extra),this.selectValue.push(l)}},columnChange(e){let t=null,l=e.detail.value;if(this.selectValue=[],"mutil-column-auto"==this.mode){this.lastSelectIndex.map((e,u)=>{e!=l[u]&&(t=u)}),this.defaultSelector=l;for(let e=t+1;e<this.columnNum;e++)this.columnData[e]=this.columnData[e-1][e-1==t?l[t]:0][this.childName],this.defaultSelector[e]=0;l.map((e,t)=>{let u=this.columnData[t][l[t]],i={value:u?u[this.valueName]:null,label:u?u[this.labelName]:null};u&&void 0!==u.extra&&(i.extra=u.extra),this.selectValue.push(i)}),this.lastSelectIndex=l}else if("single-column"==this.mode){let e=this.columnData[0][l[0]],t={value:e?e[this.valueName]:null,label:e?e[this.labelName]:null};e&&void 0!==e.extra&&(t.extra=e.extra),this.selectValue.push(t)}else"mutil-column"==this.mode&&l.map((e,t)=>{let u=this.columnData[t][l[t]],i={value:u?u[this.valueName]:null,label:u?u[this.labelName]:null};u&&void 0!==u.extra&&(i.extra=u.extra),this.selectValue.push(i)})},close(){this.$emit("input",!1)},getResult(e=null){this.moving||(e&&this.$emit(e,this.selectValue),this.close())},selectHandler(){this.$emit("click")}}},o=n,h=(l("7b31"),l("f0c5")),m=Object(h["a"])(o,a,s,!1,null,"d119e214",null,!1,i,u);t["default"]=m.exports},"7b31":function(e,t,l){"use strict";var u=l("d55d"),i=l.n(u);i.a},d55d:function(e,t,l){}}]); ;(global["webpackJsonp"] = global["webpackJsonp"] || []).push([ 'uview-ui/components/u-select/u-select-create-component', { 'uview-ui/components/u-select/u-select-create-component':(function(module, exports, __webpack_require__){ __webpack_require__('543d')['createComponent'](__webpack_require__("4235")) }) }, [['uview-ui/components/u-select/u-select-create-component']] ]);