老师看下为啥我的id绑定不成功
相关截图:
相关代码:Content.vue
<template> <div class="content"> <div class="category"> <div :class="{ category__item: true, 'category__item--active': currentTab === item.tab, }" v-for="item in categories" :key="item.name" @click="() => handleCategoryClick(item.tab)" > {{ item.name }} </div> </div> <div class="product"> <div class="product__item" v-for="item in contentList" :key="item._id"> <img class="product__item__img" src="http://www.dell-lee.com/imgs/vue3/near.png " alt="" /> <div class="product__item__detail"> <h4 class="product__item__title">{{ item.name }}</h4> <p class="product__item__sales">月售 {{ item.sales }} 件</p> <p class="product__item__price"> <span class="product__item__yen">¥</span>{{ item.price }} <span class="product__item__orign">¥{{ item.oldPrice }}</span> </p> </div> <div class="product__number"> <span class="product__number__minus">-</span> 0 <span class="product__number__plus">+</span> </div> </div> </div> </div> </template> <script> import { reactive, toRefs } from "vue"; import { useRoute } from "vue-router"; import { get } from "../../utils/request"; export default { name: "Content", setup() { const categories = [ { name: "全部商品", tab: "all", }, { name: "秒杀", tab: "seckill", }, { name: "新鲜水果", tab: "fruit", }, ]; const data = reactive({ currentTab: categories[0].tab, contentList: [], }); const route = useRoute(); console.log(route.params.id) const getContentData = async (tab) => { const result = await get(`/api/shop/${route.params.id}/products`, { tab, }); if (result?.errno === 0 && result?.data?.length) { data.contentList = result.data; } }; const handleCategoryClick = (tab) => { getContentData(tab); data.currentTab = tab; }; getContentData("all"); const { contentList, currentTab } = toRefs(data); return { categories, currentTab, contentList, handleCategoryClick }; }, }; </script> <style lang="scss" scoped> @import "../../style/viriables.scss"; @import "../../style/mixins.scss"; .content { position: absolute; display: flex; left: 0; right: 0; top: 1.5rem; bottom: 0.5rem; } .category { overflow-y: scroll; height: 100%; width: 0.76rem; background: $search-bgclor; &__item { line-height: 0.4rem; text-align: center; font-size: 0.14rem; color: $content-fontcolor; &--active { background-color: #fff; } } } .product { flex: 1; overflow-y: scroll; &__item { position: relative; display: flex; padding: 0.12rem 0; margin: 0 0.16rem; border-bottom: 0.01rem solid $content-bgclor; &__detail { overflow: hidden; } &__img { width: 0.68rem; height: 0.68rem; margin-right: 16px; } &__title { margin: 0; line-height: 0.2rem; font-size: 0.14rem; color: $content-fontcolor; @include ellipsis; } &__sales { margin: 0.06rem 0; line-height: 0.16rem; font-size: 0.12rem; color: $content-fontcolor; } &__price { margin: 0; line-height: 0.2rem; font-size: 0.14rem; color: $highlight-fontColor; } &__yen { font-size: 0.12rem; } &__orign { margin-left: 0.06rem; line-height: 0.2rem; font-size: 0.12rem; color: $light-fontColor; text-decoration: line-through; } .product__number { position: absolute; right: 0; bottom: 0.12rem; &__minus, &__plus { display: inline-block; width: 0.18rem; height: 0.18rem; line-height: 0.16rem; border-radius: 50%; font-size: 0.2rem; text-align: center; } &__minus { border: 0.01rem solid $medium-fontColor; color: $medium-fontColor; margin-right: 0.05 rem; } &__plus { width: 0.2rem; height: 0.2rem; background: $btn-bgColor; color: $bgColor; margin-left: 0.05rem; } } } } </style>
8
收起
正在回答
1回答
同学你好,id已经绑定成功了:
只是我们的接口是“模拟的(假的)”,它无法根据id的不同,返回不同的数据(不论id是什么,它都只能返回一样的数据),所以从页面效果上看,好像id没有绑定成功。
祝学习愉快!
恭喜解决一个难题,获得1积分~
来为老师/同学的回答评分吧
0 星