修改商品规格选择错乱的问题

This commit is contained in:
gaoxs
2020-04-16 16:11:23 +08:00
parent 3fd227f0eb
commit 5093e5a76c
3 changed files with 15 additions and 3 deletions

View File

@ -66,6 +66,7 @@ export default {
return {};
},
mounted: function() {
console.log(this);
},
methods: {
closeAttr: function() {
@ -81,7 +82,8 @@ export default {
// 修改商品规格不生效的原因:
// H5端下面写法attr更新但是除H5外其他端不支持
// 尽量避免下面的骚写法不要在子组件内更新props
// this.attr.productAttr[res.indexw].index = res.indexn;
// 这里修改是为了能获取到被选中的属性
this.attr.productAttr[indexw].index = indexn;
let that = this;
let value = that
.getCheckedValue()
@ -100,6 +102,7 @@ export default {
getCheckedValue: function() {
let productAttr = this.attr.productAttr;
let value = [];
console.log(productAttr)
for (let i = 0; i < productAttr.length; i++) {
for (let j = 0; j < productAttr[i].attrValueArr.length; j++) {
if (productAttr[i].index === j) {

View File

@ -10,7 +10,7 @@
<view class="start" :class="'star' + item.star"></view>
</view>
</view>
<view class="time">{{ item.add_time }} {{ item.suk }}</view>
<view class="time">{{ dataFormat(item.addTime) }} {{ item.suk }}</view>
<view class="evaluate-infor">{{ item.comment }}</view>
<view class="imgList acea-row">
<view class="pictrue" v-for="(itemn, eq) in item.picturesArr" :key="eq">
@ -26,6 +26,8 @@
</view>
</template>
<script>
import { dataFormat } from "@/utils";
export default {
name: "UserEvaluation",
props: {
@ -38,6 +40,8 @@ export default {
return {};
},
mounted: function() {},
methods: {}
methods: {
dataFormat,
}
};
</script>

View File

@ -330,6 +330,7 @@ export default {
getProductDetail(that.id, form)
.then(res => {
that.$set(that, "storeInfo", res.data.storeInfo);
// 给 attr 赋值,将请求回来的规格赋值给 attr
that.$set(that.attr, "productAttr", res.data.productAttr);
that.$set(that, "productValue", res.data.productValue);
that.$set(that, "replyCount", res.data.replyCount);
@ -496,11 +497,15 @@ export default {
this.isOpen = true;
},
changeattr: function(msg) {
// 修改了规格
console.log(msg)
this.attr.cartAttr = msg;
this.isOpen = false;
},
//选择属性;
ChangeAttr: function(res) {
// 修改了规格
console.log(res)
let productSelect = this.productValue[res.value];
if (productSelect) {
this.attr.productAttr[res.indexw].index = res.indexn;