Просмотр исходного кода

feat(cfc-web): 商品标签改为标签选择器录入(与文章标签一致)

- ProductEdit 商品标签由逗号分隔输入框改为 el-select multiple/filterable/allow-create
- 新增 productTagList 计算属性,与 form.tags(逗号分隔字符串)双向映射
- 回车添加、点标签删除,提示文案同步

[skip ci]
cfc-deploy 6 дней назад
Родитель
Сommit
895e500e10

+ 1 - 1
cfc-web/.last_build_commit

@@ -1 +1 @@
-a73cfa4e26aa298771cf64486d19327e8814944a
+1c11ebe127408e15a5b4986f9e8a8a25d614f030

+ 1 - 1
cfc-web/package.json

@@ -1,6 +1,6 @@
 {
   "name": "cfc-web",
-  "version": "1.0.2113",
+  "version": "1.0.2114",
   "private": true,
   "scripts": {
     "dev": "vue-cli-service serve",

+ 12 - 0
cfc-web/public/CHANGELOG-v1.0.md

@@ -4,6 +4,18 @@
 
 ---
 
+## v1.0.2114 (2026-11-06)
+
+### 其他
+- merge(S-cfc-28): B-25 测试装置反射注入已删字段修复 + 同源全量排查
+- 
+- merge(S-cfc-27): B-22 CF N+1 批量优化 + 鉴权清单 401 参数化契约
+- 
+
+### 测试
+- S-cfc-31 sleep.config.tags 契约级单测 (21绿/1红 blank-key 缺陷) 闭环 RED->绿
+
+
 ## v1.0.2113 (2026-11-06)
 
 ### 测试

+ 13 - 1
cfc-web/public/CHANGELOG.md

@@ -1,6 +1,6 @@
 # 更新日志
 
-> 当前版本: v1.0.2113
+> 当前版本: v1.0.2114
 
 ## 历史版本
 
@@ -8,6 +8,18 @@
 
 ---
 
+## v1.0.2114 (2026-11-06)
+
+### 其他
+- merge(S-cfc-28): B-25 测试装置反射注入已删字段修复 + 同源全量排查
+- 
+- merge(S-cfc-27): B-22 CF N+1 批量优化 + 鉴权清单 401 参数化契约
+- 
+
+### 测试
+- S-cfc-31 sleep.config.tags 契约级单测 (21绿/1红 blank-key 缺陷) 闭环 RED->绿
+
+
 ## v1.0.2113 (2026-11-06)
 
 ### 测试

+ 14 - 2
cfc-web/src/views/admin/ProductEdit.vue

@@ -44,8 +44,11 @@
         </el-form-item>
 
         <el-form-item label="商品标签">
-          <el-input v-model="form.tags" placeholder="逗号分隔,如: 育儿,亲子,心理" maxlength="200" clearable class="w-400" />
-          <div class="form-hint-mt4">用于小程序文章详情页「相关商品」推荐:标签与文章标签一字不差才会匹配,留空则不参与匹配</div>
+          <el-select v-model="productTagList" multiple filterable allow-create default-first-option
+                     placeholder="输入标签后回车添加,如:育儿、亲子、心理"
+                     class="w-400">
+          </el-select>
+          <div class="form-hint-mt4">回车添加标签,点标签可删除;用于小程序文章详情页「相关商品」推荐:标签与文章标签一字不差才会匹配,留空则不参与匹配</div>
         </el-form-item>
 
         <!-- 营养信息(可选) -->
@@ -562,6 +565,15 @@ export default {
     }
   },
   computed: {
+    productTagList: {
+      get() {
+        if (!this.form.tags) return []
+        return this.form.tags.split(/[,,、\s]+/).map(t => t.trim()).filter(t => t.length > 0)
+      },
+      set(val) {
+        this.form.tags = (val || []).join(',')
+      }
+    },
     isEdit() {
       return !!this.$route.query.id
     },