index.js 1.7 KB

1234567891011121314151617181920212223242526272829303132333435
  1. import { useEvent } from 'functional-mini/component';
  2. import { mountComponent } from '../../_util/component';
  3. import { useComponentEvent } from '../../_util/hooks/useComponentEvent';
  4. import { useHandleCustomEvent, useHandleCustomEventOnly, useMultipleValueHandleCustomEvent, } from '../../_util/hooks/useHandleCustomEvent';
  5. import { useFormItem } from '../use-form-item';
  6. import { FormCascaderPickerDefaultProps, } from './props';
  7. var FormCascaderPicker = function (props) {
  8. var _a = useFormItem(props), formData = _a.formData, emit = _a.emit;
  9. var _b = useComponentEvent(props), triggerEventValues = _b.triggerEventValues, triggerEventOnly = _b.triggerEventOnly, triggerEvent = _b.triggerEvent;
  10. useMultipleValueHandleCustomEvent('onOk', function (value, option, e) {
  11. emit('onChange', value);
  12. triggerEventValues('ok', [value, option], e);
  13. });
  14. useMultipleValueHandleCustomEvent('onPickerChange', function (value, option, e) {
  15. triggerEventValues('pickerChange', [value, option], e);
  16. });
  17. useHandleCustomEvent('onVisibleChange', function (visible, e) {
  18. triggerEvent('visibleChange', visible, e);
  19. });
  20. useEvent('handleFormat', function (value, option) {
  21. if (props.onFormat) {
  22. return props.onFormat(value, option);
  23. }
  24. }, { handleResult: true });
  25. useHandleCustomEventOnly('onDismissPicker', function (e) {
  26. triggerEventOnly('cancel', e);
  27. });
  28. useMultipleValueHandleCustomEvent('onChange', function (value, options, e) {
  29. triggerEventValues('change', [value, options], e);
  30. });
  31. return {
  32. formData: formData,
  33. };
  34. };
  35. mountComponent(FormCascaderPicker, FormCascaderPickerDefaultProps);