// component/item-flex-row/index.js Component({ /** * 组件的属性列表 */ properties: { itemData: { type: Object, observer(newVal, oldVal, changedPath) { // 属性被改变时执行的函数(可选),也可以写成在methods段中定义的方法名字符串, 如:'_propertyChange' // 通常 newVal 就是新设置的数据, oldVal 是旧数据 // this.showLayer() // console.log(newVal); // console.log(oldVal); } }, hasQuantity:{ type:Boolean, value:true }, orderProcess: { type:Number, default: 1, observer(newVal, oldVal, changedPath) { // 属性被改变时执行的函数(可选),也可以写成在methods段中定义的方法名字符串, 如:'_propertyChange' // 通常 newVal 就是新设置的数据, oldVal 是旧数据 // this.showLayer() // console.log('newVal....',newVal); // console.log('oldVal....',oldVal); } }, }, /** * 组件的初始数据 */ data: {}, attached() { // this.setData({ // storeData // }) }, /** * 组件的方法列表 */ methods: { // 加 jiaBtnTap(e) { // console.log(e.currentTarget.dataset); // console.log(this.data.itemData); let item = this.data.itemData; if (!this.data.hasQuantity) { this.setData({ hasQuantity:true }) item.Quantity = item.Mininum } let quantity = item.Quantity||item.Mininum||1; // let Mininum = list[parseInt(index)].Mininum>0?list[parseInt(index)].Mininum:1; let mininum = item.Mininum&&item.Mininum>0?item.Mininum:1; // console.log(item.Mininum) if(quantity < 1000000-mininum){ quantity+=mininum; console.log(quantity) this.setData({ ['itemData.Quantity']: Math.round(quantity*100)/100 }) this.triggerEvent('quantityEdit', { quantity:Math.round(quantity*100)/100, }); } }, // 减 jianBtnTap(e) { let item = this.data.itemData; if (!this.data.hasQuantity) { this.setData({ hasQuantity:true }) item.Quantity = item.Mininum } let quantity = item.Quantity||item.Mininum||1; // let Mininum = list[parseInt(index)].Mininum>0?list[parseInt(index)].Mininum:1; let mininum = item.Mininum&&item.Mininum>0?item.Mininum:1; if(quantity>mininum){ quantity-=mininum; quantity = quantity>1 ? quantity : 1; // console.log('---',quantity) this.setData({ ['itemData.Quantity']: Math.round(quantity*100)/100 }) this.triggerEvent('quantityEdit', { quantity:Math.round(quantity*100)/100, }); } }, inputNum(e) { if (!this.data.hasQuantity) { this.setData({ hasQuantity:true }) } // console.log(e.detail.value); if (e.detail.value > 999999) { e.detail.value = 999999; } if (e.detail.value <= 0) { e.detail.value = 1; } if(isNaN(e.detail.value)){ e.detail.value = this.data.itemData.Quantity||1; } // console.log('ddd',e.detail.value) this.setData({ ['itemData.Quantity']: Math.round(e.detail.value*100)/100 }) this.triggerEvent('quantityEdit', { quantity: Math.round(e.detail.value*100)/100 //parseFloat(e.detail.value), }); }, } });