Browse Source

优选集团

Xiao_123 1 ngày trước cách đây
mục cha
commit
4f70294666
1 tập tin đã thay đổi với 22 bổ sung9 xóa
  1. 22 9
      src/views/menduner/system/web/PreferredGroup.vue

+ 22 - 9
src/views/menduner/system/web/PreferredGroup.vue

@@ -1,5 +1,5 @@
 <template>
-  <Dialog title="优选集团内容编辑" v-model="dialogVisible" style="width: 60%;">
+  <Dialog title="优选集团内容编辑" v-model="dialogVisible" class="!w-60%">
     <el-form
       ref="formRef"
       :model="formData"
@@ -45,7 +45,7 @@
         <el-input v-model="formData.introduce.bigPicture.height" />
       </el-form-item>
       <el-form-item label="品牌介绍" prop="">
-        <el-button @click="showBrandDialog = true" type="primary">编 辑</el-button>
+        <el-button @click="showBrandDialog = true" type="primary">编 辑{{ formData.brandIntroduce && formData.brandIntroduce.length ? `(${formData.brandIntroduce.length})` : '' }}</el-button>
       </el-form-item>
     </el-form>
     <template #footer>
@@ -54,14 +54,14 @@
     </template>
   </Dialog>
 
-  <Dialog title="品牌介绍" v-model="showBrandDialog" style="width: 70%;">
+  <Dialog title="品牌介绍" v-model="showBrandDialog" class="!w-80%">
     <div class="text-right">
       <el-button type="primary" @click="handleAdd"><Icon icon="ep:plus" class="mr-5px" />新 增</el-button>
     </div>
-    <el-table :data="formData.brandIntroduce" :stripe="true">
+    <el-table :data="formData.brandIntroduce" ref="brandTableRef" :stripe="true" height="60vh">
       <el-table-column label="品牌名称" align="center" prop="content">
         <template #default="scope">
-          <el-input type="textarea" :rows="2" v-model="scope.row.content" />
+          <el-input type="textarea" :rows="1" v-model="scope.row.content" />
         </template>
       </el-table-column>
       <el-table-column label="品牌图片" align="center" prop="url" width="300">
@@ -71,7 +71,7 @@
       </el-table-column>
       <el-table-column label="品牌简介" align="center" prop="desc">
         <template #default="scope">
-          <el-input type="textarea" :rows="6" v-model="scope.row.desc" />
+          <el-input type="textarea" :rows="3" v-model="scope.row.desc" />
         </template>
       </el-table-column>
       <el-table-column label="操作" align="center" width="60">
@@ -87,7 +87,7 @@
   </Dialog>
 </template>
 
-<script setup lang="ts">
+<script setup>
 import { WebContentApi } from '@/api/menduner/system/web'
 
 /** 页面内容 表单 */
@@ -129,7 +129,7 @@ const handleChange = () => {
 
 /** 打开弹窗 */
 const result = ref({})
-const open = async (key: string, id?: number) => {
+const open = async (key, id) => {
 	currentKey.value = key
   resetForm()
   dialogVisible.value = true
@@ -162,9 +162,22 @@ const handleBrandSubmit = () => {
   showBrandDialog.value = false
 }
 
-// 提交表单
+// 新增品牌项
+const brandTableRef = ref(null)
 const handleAdd = () => {
   formData.value.brandIntroduce.push({ content: '', url: '', desc: '' })
+
+  nextTick(() => {
+    const wrapper = brandTableRef.value?.$el?.querySelector('.el-table__body-wrapper')
+    if (wrapper) {
+      const rows = wrapper.querySelectorAll('.el-table__row')
+      
+      if (rows.length) {
+        const lastRow = rows[rows.length - 1]
+        brandTableRef.value.setScrollTop(lastRow.offsetTop + lastRow.offsetHeight - wrapper.offsetHeight)
+      }
+    }
+  })
 }
 
 /** 提交表单 */