createComponent.js 1.8 KB

12345678910111213141516171819202122232425262728293031323334353637383940414243444546474849
  1. var __assign = (this && this.__assign) || function () {
  2. __assign = Object.assign || function(t) {
  3. for (var s, i = 1, n = arguments.length; i < n; i++) {
  4. s = arguments[i];
  5. for (var p in s) if (Object.prototype.hasOwnProperty.call(s, p))
  6. t[p] = s[p];
  7. }
  8. return t;
  9. };
  10. return __assign.apply(this, arguments);
  11. };
  12. function createComponent(_a) {
  13. var _b = _a.props, props = _b === void 0 ? {} : _b, _c = _a.data, data = _c === void 0 ? {} : _c, _d = _a.methods, methods = _d === void 0 ? {} : _d;
  14. Component({
  15. props: props,
  16. data: __assign(__assign({}, data), { formData: {
  17. value: undefined,
  18. status: 'default',
  19. required: false,
  20. errors: [],
  21. } }),
  22. ref: function () {
  23. var _this = this;
  24. var formItemRef = {
  25. setFormData: function (values) {
  26. _this.setData(__assign(__assign({}, _this.data), { formData: __assign(__assign({}, _this.data.formData), values) }));
  27. },
  28. getFormData: function () {
  29. return _this.data.formData;
  30. },
  31. on: function (callback) {
  32. _this.emit = callback;
  33. },
  34. getProps: function () {
  35. return _this.props;
  36. },
  37. };
  38. return formItemRef;
  39. },
  40. didUnmount: function () {
  41. this.emit('didUnmount');
  42. },
  43. deriveDataFromProps: function (nextProps) {
  44. this.emit('deriveDataFromProps', nextProps);
  45. },
  46. methods: __assign(__assign({}, methods), { emit: function (trigger, value) { } }),
  47. });
  48. }
  49. export default createComponent;