index.js 1.8 KB

12345678910111213141516171819202122232425262728293031323334353637383940414243444546474849505152535455565758596061
  1. Component({
  2. properties: {
  3. list: Array,
  4. disabled: {
  5. type: Boolean,
  6. value: true
  7. },
  8. change: Function,
  9. handleDetele: Function
  10. },
  11. options: {
  12. addGlobalClass: true
  13. },
  14. methods: {
  15. /* 步进器修改 */
  16. onChange(e) {
  17. let index = e.currentTarget.dataset.index,
  18. item = this.data.list[index];
  19. switch (e.type) {
  20. case "blur":
  21. if (item.qty == e.detail.value - 0) return;
  22. item.qty = e.detail.value - 0;
  23. break;
  24. case "plus":
  25. item.qty += 1;
  26. break;
  27. case "minus":
  28. item.qty -= 1;
  29. break;
  30. };
  31. this.toChange(item, index)
  32. },
  33. onBlur(e) {
  34. let index = e.currentTarget.dataset.index,
  35. item = this.data.list[index];
  36. if (item.price == e.detail.value - 0) return;
  37. item.price = e.detail.value - 0;
  38. this.toChange(item, index)
  39. },
  40. toChange(item, index) {
  41. item.amount = ((item.qty - 0) * (item.price - 0)).toFixed();
  42. this.triggerEvent("change", {
  43. item,
  44. index
  45. })
  46. },
  47. deleteProduct(e) {
  48. let that = this;
  49. const {
  50. item
  51. } = e.currentTarget.dataset;
  52. wx.showModal({
  53. title: '提示',
  54. content: '是否确定删除该费用',
  55. complete: (res) => {
  56. if (res.confirm) that.triggerEvent("handleDetele", item.sa_quotedprice_specialitemsid)
  57. }
  58. })
  59. }
  60. }
  61. })