Commit 0a4b0a7f13bc5f8275816dc4d432ca9f28bc1bde

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

阻止默认表单事件,Scheme组件增加搜索栏插槽

packages/form/index.vue
@@ -20,7 +20,7 @@ @@ -20,7 +20,7 @@
20 </style> 20 </style>
21 21
22 <template> 22 <template>
23 - <el-form class="eagle-form" ref="form" :model="model" v-bind="{ size: 'small', 'label-width': '100px', ...formProps }"> 23 + <el-form class="eagle-form" ref="form" :model="model" v-bind="{ size: 'small', 'label-width': '100px', ...formProps }" @submit.native.prevent>
24 <el-row :gutter="15"> 24 <el-row :gutter="15">
25 <el-collapse v-if="(formProps.collapse || collapse) && listOption.isGroup" v-model="activeNames" :accordion="(formProps.accordion || accordion)" class="eagle-form__collapse"> 25 <el-collapse v-if="(formProps.collapse || collapse) && listOption.isGroup" v-model="activeNames" :accordion="(formProps.accordion || accordion)" class="eagle-form__collapse">
26 <template v-for="(data, index) in listOption.dataList"> 26 <template v-for="(data, index) in listOption.dataList">
packages/scheme/index.vue
@@ -79,16 +79,24 @@ @@ -79,16 +79,24 @@
79 79
80 <template> 80 <template>
81 <div class="eagle-scheme"> 81 <div class="eagle-scheme">
82 - <div v-if="option.showSearch !== false" class="eagle-scheme__card">  
83 - <!-- 搜索表单 -->  
84 - <component :is="_searchComponent" :list="searchList || _searchList" v-model="searchModel" :span="searchProps.span || 6" :showNumber="searchProps.showNumber" :formProps="searchProps" @search="value => handleSearch(value, true)" :searching="tableLoading">  
85 - <!-- 搜索表单项具名插槽 -->  
86 - <template v-for="item in searchList || _searchList">  
87 - <slot v-if="$scopedSlots[`search-${item.key}`] || $slots[`search-${item.key}`]" :name="`search-${item.key}`" :slot="item.key" :model="searchModel"></slot>  
88 - <slot v-else-if="$scopedSlots[`field-${item.key}`] || $slots[`field-${item.key}`]" :name="`field-${item.key}`" :slot="item.key" :model="searchModel"></slot>  
89 - </template>  
90 - </component>  
91 - </div> 82 + <!-- 表格搜索栏插槽 -->
  83 + <template v-if="option.showSearch !== false">
  84 + <template v-if="$scopedSlots['search'] || $slots['search']">
  85 + <slot name="search" v-bind="slotMethod" :handleSearch="handleSearch" :searching="tableLoading"></slot>
  86 + </template>
  87 + <template v-else>
  88 + <div class="eagle-scheme__card">
  89 + <!-- 搜索表单 -->
  90 + <component :is="_searchComponent" :list="searchList || _searchList" v-model="searchModel" :span="searchProps.span || 6" :showNumber="searchProps.showNumber" :formProps="searchProps" @search="value => handleSearch(value, true)" :searching="tableLoading">
  91 + <!-- 搜索表单项具名插槽 -->
  92 + <template v-for="item in searchList || _searchList">
  93 + <slot v-if="$scopedSlots[`search-${item.key}`] || $slots[`search-${item.key}`]" :name="`search-${item.key}`" :slot="item.key" :model="searchModel"></slot>
  94 + <slot v-else-if="$scopedSlots[`field-${item.key}`] || $slots[`field-${item.key}`]" :name="`field-${item.key}`" :slot="item.key" :model="searchModel"></slot>
  95 + </template>
  96 + </component>
  97 + </div>
  98 + </template>
  99 + </template>
92 <!-- 操作按钮栏 --> 100 <!-- 操作按钮栏 -->
93 <div v-if="option.showActionBar !== false" class="eagle-scheme__action" v-loading="tableLoading" element-loading-spinner="none" element-loading-background="rgba(255, 255, 255, 0.6)"> 101 <div v-if="option.showActionBar !== false" class="eagle-scheme__action" v-loading="tableLoading" element-loading-spinner="none" element-loading-background="rgba(255, 255, 255, 0.6)">
94 <slot v-if="$scopedSlots['action-bar'] || $slots['action-bar']" name="action-bar" v-bind="slotMethod" :model="formModel" :selection="tableSelection"></slot> 102 <slot v-if="$scopedSlots['action-bar'] || $slots['action-bar']" name="action-bar" v-bind="slotMethod" :model="formModel" :selection="tableSelection"></slot>