vxe-pc-ui
Version:
A vue based PC component library
1 lines • 1.35 kB
JavaScript
;Object.defineProperty(exports,"__esModule",{value:!0}),exports.WidgetVxeSelectViewComponent=void 0;var _vue=require("vue"),_core=require("@vxe-ui/core"),_use=require("../../form-design/src/use"),_formItem=_interopRequireDefault(require("../../form/src/form-item")),_select=_interopRequireDefault(require("../../select/src/select"));function _interopRequireDefault(e){return e&&e.__esModule?e:{default:e}}const WidgetVxeSelectViewComponent=exports.WidgetVxeSelectViewComponent=(0,_vue.defineComponent)({props:{renderOpts:{type:Object,default:()=>({})},renderParams:{type:Object,default:()=>({})}},emits:[],setup(o){const l=(0,_vue.inject)("$xeFormView",null),i=(0,_use.useWidgetName)(o)["computeKebabCaseName"],a=()=>{var e,t=o["renderParams"],t=t["widget"];l&&(e=l?l.getItemValue(t):null,l.updateWidgetStatus(t,e))};return()=>{var e=o["renderParams"];const{widget:t,isViewMode:r}=e,u=t["options"];e=i.value;return(0,_vue.h)(_formItem.default,{class:["vxe-form-design--widget-render-form-item","widget-"+e],title:t.title,field:t.field,itemRender:{}},{default(){return(0,_vue.h)(_select.default,{modelValue:l?l.getItemValue(t):null,placeholder:u.placeholder||(0,_core.getI18n)("vxe.base.pleaseSelect"),options:r?u.options:[],optionProps:{label:"value",value:"value"},onChange:a,"onUpdate:modelValue"(e){l&&l.setItemValue(t,e)}})}})}}});