index.js 1.7 KB

12345678910111213141516171819202122232425262728293031323334353637383940414243444546474849505152535455565758596061
  1. "use strict";
  2. Object.defineProperty(exports, "__esModule", { value: true });
  3. var component_1 = require("../common/component");
  4. component_1.VantComponent({
  5. classes: [
  6. 'bar-class',
  7. 'price-class',
  8. 'button-class'
  9. ],
  10. props: {
  11. tip: {
  12. type: null,
  13. observer: 'updateTip'
  14. },
  15. tipIcon: String,
  16. type: Number,
  17. price: {
  18. type: null,
  19. observer: 'updatePrice'
  20. },
  21. label: String,
  22. loading: Boolean,
  23. disabled: Boolean,
  24. buttonText: String,
  25. currency: {
  26. type: String,
  27. value: '¥'
  28. },
  29. buttonType: {
  30. type: String,
  31. value: 'danger'
  32. },
  33. decimalLength: {
  34. type: Number,
  35. value: 2,
  36. observer: 'updatePrice'
  37. },
  38. suffixLabel: String,
  39. safeAreaInsetBottom: {
  40. type: Boolean,
  41. value: true
  42. }
  43. },
  44. methods: {
  45. updatePrice: function () {
  46. var _a = this.data, price = _a.price, decimalLength = _a.decimalLength;
  47. var priceStrArr = typeof price === 'number' && (price / 100).toFixed(decimalLength).split('.');
  48. this.setData({
  49. hasPrice: typeof price === 'number',
  50. integerStr: priceStrArr && priceStrArr[0],
  51. decimalStr: decimalLength && priceStrArr ? "." + priceStrArr[1] : ''
  52. });
  53. },
  54. updateTip: function () {
  55. this.setData({ hasTip: typeof this.data.tip === 'string' });
  56. },
  57. onSubmit: function (event) {
  58. this.$emit('submit', event.detail);
  59. }
  60. }
  61. });