Commit 407cf383d4ab1f4aa683309836ad3645ccb44ef3

Authored by Aaron
1 parent fe692299
Exists in master and in 1 other branch legacy

Scheme Form 表单项label支持自定义

examples/main.js
... ... @@ -18,7 +18,7 @@ const request = axios.create({
18 18 timeout: 1000 * 60,
19 19 withCredentials: true,
20 20 headers: {
21   - token: 'ca0b8636568e89d8bdfe394750dea7a0',
  21 + token: 'ca2bd2fbc89ee1fdf26c975255905f8b',
22 22 'Accept-Language': 'zh-CN'
23 23 }
24 24 });
... ...
examples/views/docs/form.md
... ... @@ -48,7 +48,11 @@ export default {
48 48  
49 49 ```html
50 50 <template>
51   - <eagle-form :list="formList" style="width: 500px;"></eagle-form>
  51 + <eagle-form :list="formList" style="width: 500px;">
  52 + <template #label-gender="{ label }">
  53 + <span>自定义 - {{ label }}</span>
  54 + </template>
  55 + </eagle-form>
52 56 </template>
53 57  
54 58 <script>
... ...
examples/views/page/test.vue
... ... @@ -7,9 +7,12 @@
7 7 <template #action-btn-new>
8 8 <el-button>按钮</el-button>
9 9 </template>
10   - <template #table-operation-btn-edit>
11   - <el-button class="eagle-scheme__table-btn" type="text">测试</el-button>
  10 + <template #form-label-code="{ label }">
  11 + 修改 - {{ label }}
12 12 </template>
  13 + <!-- <template #table-operation-btn-edit>
  14 + <el-button class="eagle-scheme__table-btn" type="text">测试</el-button>
  15 + </template> -->
13 16 <template #table-append>
14 17 <el-table-column prop="createTime" label="创建时间" min-width="180"></el-table-column>
15 18 <el-table-column prop="createUser" label="创建人" min-width="160" show-overflow-tooltip></el-table-column>
... ...
packages/form/index.vue
... ... @@ -33,6 +33,7 @@
33 33 <template v-for="(item, index) in data.list">
34 34 <el-col v-if="bindItemVisible(item.visible)" v-show="bindItemShow(item.show)" :key="index + 'data'" :span="!item.span ? span : item.span">
35 35 <el-form-item :label="item.label" :label-width="item.label ? undefined : item.labelWidth || '0px'" :prop="item.key" :rules="bindItemRules(item)">
  36 + <slot v-if="$scopedSlots[`label-${item.key}`] || $slots[`label-${item.key}`]" :name="`label-${item.key}`" slot="label" :model="model" v-bind="item"></slot>
36 37 <el-tooltip :disabled="!item.tip" v-bind="bindItemTip(item.tip)">
37 38 <slot v-if="$scopedSlots[`item-${item.key}`] || $slots[`item-${item.key}`]" :name="`item-${item.key}`" :model="model" v-bind="item"></slot>
38 39 <component v-else :is="item.type || 'el-input'" v-model="model[item.key]" v-bind="bindItemProps(item)" v-on="bindItemEvent(item)" :style="bindItemStyle(item.style)"></component>
... ...
packages/scheme/index.vue
... ... @@ -131,6 +131,7 @@
131 131 <!-- 表单项具名插槽 -->
132 132 <template v-for="item in _formList">
133 133 <slot v-if="$scopedSlots[`form-item-${item.key}`] || $slots[`form-item-${item.key}`]" :name="`form-item-${item.key}`" :slot="`item-${item.key}`" :model="formModel"></slot>
  134 + <slot v-if="$scopedSlots[`form-label-${item.key}`] || $slots[`form-label-${item.key}`]" :name="`form-label-${item.key}`" :slot="`label-${item.key}`" :model="formModel" v-bind="item"></slot>
134 135 </template>
135 136 </eagle-form>
136 137 <eagle-detail v-else-if="dialogType === 'dialog-view' && !$scopedSlots['dialog-view'] && !$slots['dialog-view']" v-model="formModel" :list="list || detailList || _formList" :span="detailProps.span || 8" :formProps="detailProps">
... ...