为了账号安全,请及时绑定邮箱和手机立即绑定

Vue.js 未设置数据对象数组中声明的属性

Vue.js 未设置数据对象数组中声明的属性

蓝山帝景 2021-08-20 15:37:33
我是 vue.js 的新手,我想创建一些产品卡,通过 vue.js 动态设置其属性:我有这是我的 HTML 片段:<div id="app"><card v-for= "products in product" :productname="product.productname"></card></div>这是我的 vue.js 模板/组件代码:Vue.component('card', {    props: [`productname`, `oldPrice`, `productPrice`, `productdetails`, `imgsrc`],    template: `    <div class="card">    <div class="card-img-top">       <img :src="imgsrc">    </div>    <div class="card-body">        <h2>{{productname}}</h2>        <p>{{productdetails}}.</p>        <h6 class="product-price"><span class="old-price">{{oldPrice}} </span>{{productPrice}}</h6>        <div class="rating">            <span class="fa fa-star"></span>            <span class="fa fa-star"></span>            <span class="fa fa-star"></span>            <span class="fa fa-star"></span>            <span class="fa fa-star-half"></span>            <span class="fa fa-star-o"></span>        </div>    </div>      </div>`})这是我的 vue 实例:new Vue({el: " #app",data: {    product: [{            imgsrc: 'img/41IP6IopkBL.jpg',            productname: "Pinar Wine top",            productdetails: 'Lorem ipsum dolor sit amet, consectetur ',            productPrice: '$200',            oldPrice: '$400'        }, {            imgsrc: 'img/41IP6IopkBL.jpg',            productname: 'Pinar Wine top',            productdetails: 'Lorem ipsum dolor sit amet, consectetur',            productprice: '$200',            oldprice: '$400'        }]但它只是显示卡片,不显示属性(例如产品名称、价格等)。我做错了什么?
查看完整描述

1 回答

?
慕斯709654

TA贡献1840条经验 获得超5个赞

命名在开发过程中非常重要,以免被您所写的内容弄糊涂。看看你的代码。

尤其是这里

<card v-for= "products in product" :productname="product.productname"></card>
                                                       ^-- wrong naming here

您正在访问product.productname但您想访问products.productname. 正如我所说,命名很重要。您可以更改产品和产品的命名。


查看完整回答
反对 回复 2021-08-20
  • 1 回答
  • 0 关注
  • 305 浏览
慕课专栏
更多

添加回答

举报

0/150
提交
取消
意见反馈 帮助中心 APP下载
官方微信