UNPKG

element-plus-jsx

Version:

基于 Element Plus 扩展 JSX 语法的组件库

31 lines (28 loc) 956 B
import { createVNode, mergeProps } from 'vue'; import { _get, _set } from '../../_utils/index.js'; import { defineFormFnPlugin, useFnOrRefProp } from '../../hooks.js'; import { ElSwitch } from 'element-plus'; var switchPlugins = defineFormFnPlugin(props => { return props.formFn.map(item => { if (!item.slots?.default && item.type === 'switch') { return { ...item, slots: { default: () => createVNode(ElSwitch, mergeProps({ "style": { width: '100%' }, "modelValue": _get(props.form.value, item.prop), "onUpdate:modelValue": val => { _set(props.form.value, item.prop, val); }, "disabled": useFnOrRefProp(item.disabled, props), "placeholder": item.placeholder }, item.switchProps), item.switchProps?.slots) } }; } return item; }); }); export { switchPlugins as default };