How to use the @uform/core.LifeCycleTypes.ON_FORM_INIT function in @uform/core

To help you get started, we’ve selected a few @uform/core examples, based on popular ways it is used in public projects.

Secure your code as it's written. Use Snyk Code to scan source code in minutes - no build needed - and fix issues immediately.

github alibaba / uform / packages / react / src / components / FormConsumer.tsx View on Github external
const transformStatus = (type: string, ref: any) => {
  switch (type) {
    case LifeCycleTypes.ON_FORM_INIT:
      return 'initialize'
    case LifeCycleTypes.ON_FORM_SUBMIT_START:
      ref.current.submitting = true
      return 'submitting'
    case LifeCycleTypes.ON_FORM_SUBMIT_END:
      ref.current.submitting = false
      return 'submitted'
    default:
      return ref.current.submitting ? 'submitting' : type
  }
}
github alibaba / uform / packages / react / src / shared.ts View on Github external
if (!env.effectStart || env.effectEnd) {
    throw new Error(
      'EffectHook must be called synchronously within the effects callback function.'
    )
  }
  if (!env.effectSelector) {
    throw new Error('Can not found effect hook selector.')
  }
  return env.effectSelector(type, ...args)
}

export const FormEffectHooks = {
  onFormWillInit$: createEffectHook(
    LifeCycleTypes.ON_FORM_WILL_INIT
  ),
  onFormInit$: createEffectHook(LifeCycleTypes.ON_FORM_INIT),
  onFormChange$: createEffectHook(LifeCycleTypes.ON_FORM_CHANGE),
  onFormInputChange$: createEffectHook(
    LifeCycleTypes.ON_FORM_INPUT_CHANGE
  ),
  onFormInitialValueChange$: createEffectHook(
    LifeCycleTypes.ON_FORM_INITIAL_VALUES_CHANGE
  ),
  onFormReset$: createEffectHook(LifeCycleTypes.ON_FORM_RESET),

  onFormSubmitValidateStart$: createEffectHook(
    LifeCycleTypes.ON_FORM_SUBMIT_VALIDATE_START
  ),
  onFormSubmitValidateSuccess$: createEffectHook(
    LifeCycleTypes.ON_FORM_SUBMIT_VALIDATE_SUCCESS
  ),
  onFormSubmitValidateFailed$: createEffectHook(
github alibaba / uform / packages / react / src / components / FormSpy.tsx View on Github external
export const FormSpy: React.FunctionComponent = props => {
  const broadcast = useContext(BroadcastContext)
  const form = useContext(FormContext)
  const initializedRef = useRef(false)
  const [type, setType] = useState(LifeCycleTypes.ON_FORM_INIT)
  const [state, dispatch] = useReducer(
    (state, action) => props.reducer(state, action, form),
    {}
  )
  const subscriber = useCallback(({ type, payload }) => {
    if (initializedRef.current) return
    if (isStr(props.selector) && FormPath.parse(props.selector).match(type)) {
      setType(type)
      dispatch({
        type,
        payload
      })
    } else if (isArr(props.selector) && props.selector.indexOf(type) > -1) {
      setType(type)
      dispatch({
        type,
github alibaba / uform / packages / react / src / hooks / useFormSpy.ts View on Github external
export const useFormSpy = (props: IFormSpyProps): ISpyHook => {
  const broadcast = useContext(BroadcastContext)
  const form = useContext(FormContext)
  const initializedRef = useRef(false)
  const subscriberId = useRef()
  const [type, setType] = useState(LifeCycleTypes.ON_FORM_INIT)
  const [state, dispatch] = useReducer(
    (state, action) => props.reducer(state, action, form),
    {}
  )
  const subscriber = useCallback(({ type, payload }) => {
    if (initializedRef.current) return
    setTimeout(() => {
      if (isStr(props.selector) && FormPath.parse(props.selector).match(type)) {
        setType(type)
        dispatch({
          type,
          payload
        })
      } else if (isArr(props.selector) && props.selector.indexOf(type) > -1) {
        setType(type)
        dispatch({