@elementplus-kit/uikit 1.2.0 → 1.4.0

This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
@@ -50,6 +50,7 @@ const propsAttrs = {
50
50
  options: { type: Array, default: () => [] },
51
51
  // 字典选项
52
52
  optionsRef: { type: Object, default: () => {} },
53
+ mergeParams: { type: Object, default: () => {} },
53
54
  };
54
55
 
55
56
  export default defineComponent({
@@ -107,7 +108,7 @@ export default defineComponent({
107
108
  const getDisabled = () => {
108
109
  let disabled = false;
109
110
  if (isFunction(attrs.value?.disabled)) {
110
- disabled = attrs.value.disabled(model.value);
111
+ disabled = attrs.value.disabled(props.mergeParams);
111
112
  }
112
113
  if (isBoolean(attrs.value?.disabled)) { // 在 attrs 后面结构, 也要处理直接赋值的情况,不然会覆盖
113
114
  disabled = attrs.value.disabled;
@@ -186,7 +187,6 @@ export default defineComponent({
186
187
  return options?.value?.map((item) => {
187
188
  return h(ElOption, {
188
189
  ...item,
189
- // disabled: isFunction(item.disabled) ? item.disabled(model.value) : item.disabled,
190
190
  label: item.label,
191
191
  value: item.value,
192
192
  key: item.value,
@@ -101,15 +101,22 @@ export default defineComponent({
101
101
  return formItemVdom;
102
102
  }
103
103
  };
104
-
104
+ // 合并 formData 和 params
105
+ const mergeParams = computed(() => {
106
+ return { formData: model.value, params: props.params };
107
+ });
105
108
  // 渲染表单项
106
109
  const renderFormItem = () => {
107
110
  // 过滤权限
108
111
  const list = [];
112
+
109
113
  formOptions.value.map((item) => {
110
114
  // 处理 vIf true 显示 false 隐藏
111
- if (isFunction(item?.vIf) && item.vIf(props.model, props.params) !== undefined) {
112
- if (item.vIf(props.model, props.params)) {
115
+ if (
116
+ isFunction(item?.vIf) &&
117
+ item.vIf(mergeParams.value) !== undefined
118
+ ) {
119
+ if (item.vIf(mergeParams.value)) {
113
120
  list.push(item);
114
121
  }
115
122
  } else {
@@ -124,6 +131,7 @@ export default defineComponent({
124
131
  class: "c-form-itme",
125
132
  model: model.value,
126
133
  allReadonly,
134
+ mergeParams: mergeParams.value,
127
135
  ...item,
128
136
  optionsRef: optionsRef.value,
129
137
  });
package/package.json CHANGED
@@ -1,6 +1,6 @@
1
1
  {
2
2
  "name": "@elementplus-kit/uikit",
3
- "version": "1.2.0",
3
+ "version": "1.4.0",
4
4
  "description": "",
5
5
  "main": "./components/index.ts",
6
6
  "peerDependencies": {