react-native-use-form-lite
Version:
Un hook personalizado y ligero para gestionar formularios en React Native de manera sencilla y eficiente. Facilita la captura y manejo de datos en formularios sin complicaciones, optimizando el proceso de integración y mejora la legibilidad del código.
47 lines (45 loc) • 1.46 kB
text/typescript
/**
* Representa el estado general del formulario.
* Cada campo puede ser de cualquier tipo de dato.
*/
type FormState = Record<string, any>;
/**
* Opciones adicionales para el registro de un campo.
* Permite definir el tipo de input para personalizar los handlers.
*/
interface RegisterOptions {
type?: 'text' | 'select' | 'switch' | 'range' | 'radio' | 'checkbox' | 'checkbox-multiple';
value?: string;
}
/**
* Custom hook para manejar formularios de manera sencilla en React Native.
* @param initialState Estado inicial del formulario (campos y valores).
*/
declare function useFormLite(initialState?: FormState): {
formData: FormState;
onChange: (key: string, value: any) => void;
resetForm: () => void;
register: (key: string, options?: RegisterOptions) => {
selectedValue: any;
onValueChange: (value: any) => void;
value?: undefined;
onChangeText?: undefined;
} | {
value: any;
onValueChange: (value: number) => void;
selectedValue?: undefined;
onChangeText?: undefined;
} | {
value: any;
onValueChange: (value: boolean) => void;
selectedValue?: undefined;
onChangeText?: undefined;
} | {
value: any;
onChangeText: (text: string) => void;
selectedValue?: undefined;
onValueChange?: undefined;
};
getEmptyFields: () => Record<string, string>;
};
export { useFormLite };