vxe-design
Version:
A PC-based visual designer based on Vxe UI, used for building zero-code and low-code platforms
1 lines • 1.11 kB
JavaScript
;Object.defineProperty(exports,"__esModule",{value:!0}),exports.WidgetVxeInputViewComponent=void 0;var _vue=require("vue"),_comp=require("../../ui/src/comp"),_core=require("@vxe-ui/core"),_use=require("../../form-design/src/use");const WidgetVxeInputViewComponent=exports.WidgetVxeInputViewComponent=(0,_comp.defineVxeComponent)({props:{renderOpts:{type:Object,default:()=>({})},renderParams:{type:Object,default:()=>({})}},emits:[],setup(o){const u=_core.VxeUI.getComponent("vxe-form-item"),n=_core.VxeUI.getComponent("vxe-input"),i=(0,_vue.inject)("$xeFormView",null),d=(0,_use.useWidgetName)(o)["computeKebabCaseName"],a=()=>{var e,t=o["renderParams"],t=t["widget"];i&&(e=i?i.getItemValue(t):null,i.updateWidgetStatus(t,e))};return()=>{var e=o["renderParams"];const t=e["widget"],r=t["options"];e=d.value;return(0,_vue.h)(u,{class:["vxe-form-design--widget-render-form-item","widget-"+e],field:t.field,title:t.title,itemRender:{}},{default(){return(0,_vue.h)(n,{modelValue:i?i.getItemValue(t):null,placeholder:r.placeholder,onChange:a,"onUpdate:modelValue"(e){i&&i.setItemValue(t,e)}})}})}}});