fix(productDetail): 修复未绑定微信时显示联系按钮的问题
refactor(myFavorites): 重构取消关注对话框的内容结构 feat(BrandModelPicker): 新增爱玛品牌多个车型选项
Showing
3 changed files
with
20 additions
and
9 deletions
| ... | @@ -114,7 +114,13 @@ const brandModelMap = ref({ | ... | @@ -114,7 +114,13 @@ const brandModelMap = ref({ |
| 114 | { text: 'A1 Pro', value: 'aima_a1_pro' }, | 114 | { text: 'A1 Pro', value: 'aima_a1_pro' }, |
| 115 | { text: 'A2 Max', value: 'aima_a2_max' }, | 115 | { text: 'A2 Max', value: 'aima_a2_max' }, |
| 116 | { text: 'A3 Plus', value: 'aima_a3_plus' }, | 116 | { text: 'A3 Plus', value: 'aima_a3_plus' }, |
| 117 | - { text: 'A4 Elite', value: 'aima_a4_elite' } | 117 | + { text: 'A4 Elite', value: 'aima_a4_elite' }, |
| 118 | + { text: 'A4i', value: 'aima_a4i' }, | ||
| 119 | + { text: 'A4i+', value: 'aima_a4i_plus' }, | ||
| 120 | + { text: 'A5', value: 'aima_a5' }, | ||
| 121 | + { text: 'A5i', value: 'aima_a5i' }, | ||
| 122 | + { text: 'A6', value: 'aima_a6' }, | ||
| 123 | + { text: 'A6i', value: 'aima_a6i' }, | ||
| 118 | ], | 124 | ], |
| 119 | 'yadi': [ | 125 | 'yadi': [ |
| 120 | { text: 'Y1 智享版', value: 'yadi_y1_smart' }, | 126 | { text: 'Y1 智享版', value: 'yadi_y1_smart' }, |
| ... | @@ -218,7 +224,7 @@ const calculateContentHeight = async () => { | ... | @@ -218,7 +224,7 @@ const calculateContentHeight = async () => { |
| 218 | // 获取窗口信息 | 224 | // 获取窗口信息 |
| 219 | const windowInfo = Taro.getWindowInfo() | 225 | const windowInfo = Taro.getWindowInfo() |
| 220 | const windowHeight = windowInfo.windowHeight | 226 | const windowHeight = windowInfo.windowHeight |
| 221 | - | 227 | + |
| 222 | // 使用 setTimeout 确保 DOM 元素已渲染 | 228 | // 使用 setTimeout 确保 DOM 元素已渲染 |
| 223 | setTimeout(async () => { | 229 | setTimeout(async () => { |
| 224 | try { | 230 | try { |
| ... | @@ -226,10 +232,10 @@ const calculateContentHeight = async () => { | ... | @@ -226,10 +232,10 @@ const calculateContentHeight = async () => { |
| 226 | const headerHeight = await $('.picker-header').height() || 120 | 232 | const headerHeight = await $('.picker-header').height() || 120 |
| 227 | // 获取搜索框高度 | 233 | // 获取搜索框高度 |
| 228 | const searchHeight = await $('.search-container').height() || 100 | 234 | const searchHeight = await $('.search-container').height() || 100 |
| 229 | - | 235 | + |
| 230 | // 计算可用高度:窗口高度的80% - 头部高度 - 搜索框高度 - 额外边距 | 236 | // 计算可用高度:窗口高度的80% - 头部高度 - 搜索框高度 - 额外边距 |
| 231 | const availableHeight = windowHeight * 0.8 - headerHeight - searchHeight - 40 | 237 | const availableHeight = windowHeight * 0.8 - headerHeight - searchHeight - 40 |
| 232 | - | 238 | + |
| 233 | // 转换为 rpx 单位 (假设设计稿宽度为750rpx) | 239 | // 转换为 rpx 单位 (假设设计稿宽度为750rpx) |
| 234 | const factor = 750 / windowInfo.windowWidth | 240 | const factor = 750 / windowInfo.windowWidth |
| 235 | contentHeight.value = Math.max(availableHeight * factor, 600) // 最小高度600rpx | 241 | contentHeight.value = Math.max(availableHeight * factor, 600) // 最小高度600rpx | ... | ... |
| 1 | <!-- | 1 | <!-- |
| 2 | * @Date: 2022-09-19 14:11:06 | 2 | * @Date: 2022-09-19 14:11:06 |
| 3 | * @LastEditors: hookehuyr hookehuyr@gmail.com | 3 | * @LastEditors: hookehuyr hookehuyr@gmail.com |
| 4 | - * @LastEditTime: 2025-07-04 14:30:46 | 4 | + * @LastEditTime: 2025-07-08 14:47:52 |
| 5 | * @FilePath: /jgdl/src/pages/myFavorites/index.vue | 5 | * @FilePath: /jgdl/src/pages/myFavorites/index.vue |
| 6 | * @Description: 我的关注页面 | 6 | * @Description: 我的关注页面 |
| 7 | --> | 7 | --> |
| ... | @@ -86,12 +86,17 @@ | ... | @@ -86,12 +86,17 @@ |
| 86 | <nut-dialog | 86 | <nut-dialog |
| 87 | v-model:visible="showConfirmModal" | 87 | v-model:visible="showConfirmModal" |
| 88 | title="温馨提示" | 88 | title="温馨提示" |
| 89 | - content="确定要取消关注此车辆吗?" | ||
| 90 | cancel-text="取消" | 89 | cancel-text="取消" |
| 91 | ok-text="确认" | 90 | ok-text="确认" |
| 92 | @cancel="showConfirmModal = false" | 91 | @cancel="showConfirmModal = false" |
| 93 | @ok="confirmUnfollow" | 92 | @ok="confirmUnfollow" |
| 94 | - /> | 93 | + > |
| 94 | + <template #default> | ||
| 95 | + <view> | ||
| 96 | + <text style="font-size: 1rem;">确定要取消关注此车辆吗?</text> | ||
| 97 | + </view> | ||
| 98 | + </template> | ||
| 99 | + </nut-dialog> | ||
| 95 | 100 | ||
| 96 | <!-- 成功提示 --> | 101 | <!-- 成功提示 --> |
| 97 | <nut-toast | 102 | <nut-toast | ... | ... |
| 1 | <!-- | 1 | <!-- |
| 2 | * @Date: 2022-09-19 14:11:06 | 2 | * @Date: 2022-09-19 14:11:06 |
| 3 | * @LastEditors: hookehuyr hookehuyr@gmail.com | 3 | * @LastEditors: hookehuyr hookehuyr@gmail.com |
| 4 | - * @LastEditTime: 2025-07-07 17:25:54 | 4 | + * @LastEditTime: 2025-07-08 14:15:15 |
| 5 | * @FilePath: /jgdl/src/pages/productDetail/index.vue | 5 | * @FilePath: /jgdl/src/pages/productDetail/index.vue |
| 6 | * @Description: 商品详情页 | 6 | * @Description: 商品详情页 |
| 7 | --> | 7 | --> |
| ... | @@ -168,7 +168,7 @@ | ... | @@ -168,7 +168,7 @@ |
| 168 | <text class="text-xs text-gray-500 block">{{ product.seller.school }}</text> | 168 | <text class="text-xs text-gray-500 block">{{ product.seller.school }}</text> |
| 169 | </view> | 169 | </view> |
| 170 | </view> | 170 | </view> |
| 171 | - <view @tap="showWechatModal" class="text-green-500 flex items-center"> | 171 | + <view v-if="product.seller.wechat" @tap="showWechatModal" class="text-green-500 flex items-center"> |
| 172 | <nut-button type="success"> | 172 | <nut-button type="success"> |
| 173 | <template #icon> | 173 | <template #icon> |
| 174 | <Message size="16" /> | 174 | <Message size="16" /> | ... | ... |
-
Please register or login to post a comment