Hooks
useCSC

useCSC

El hook useCSC proporciona funcionalidad para seleccionar País, Estado y Ciudad, cargando dinámicamente los datos relacionados.

Importación

Para importar el componente useCSC, se puede hacer desde fenextjs

import { useCSC } from "fenextjs";

Parámetros

ParámetroTipoRequeridoDefaultDescripcion
defaultValueCSCPropsnoValor inicial opcional que define los datos CSC por defecto.
valueCSCPropsnoObjeto opcional que contiene el valor actual de los datos CSC seleccionados.
onChange(data: CSCProps) => voidnoFunción de callback que se ejecuta al cambiar el valor CSC.
defaultValueJsonStringstringnoValor inicial opcional en formato JSON string para los datos CSC.
valueJsonStringstringnoCadena JSON opcional que representa el valor actual de los datos CSC.
onChangeJsonString(data: string) => voidnoFunción de callback que se ejecuta cuando los datos CSC en formato JSON cambian.
parseJson_to_String(data: CSCProps) => stringnoFunción para convertir CSCProps a una cadena JSON, usa parseCSC_to_CSCString si no se proporciona.
parseString_to_Json(data: string) => CSCPropsnoFunción para convertir una cadena JSON a CSCProps, usa parseCSCString_to_CSC si no se proporciona.

Returns

ParametroTipoDescripcion
countrysCountryProps[]Array de países cargados para selección.
statesStateProps[]Array de estados cargados para selección, según el país seleccionado.
citysCityProps[]Array de ciudades cargadas para selección, según el estado seleccionado.
onChangeCSC(id: keyof CSCProps) => (v: CountryProps | StateProps | CityProps | undefined) => voidFunción para actualizar los datos CSC seleccionados, cargando automáticamente estados o ciudades según corresponda.
valueCSCPropsValor actual de los datos CSC seleccionados, combinado de los datos recibidos y el valor por defecto.
loadCountrysbooleanIndica si los datos de países están cargando.
loadStatesbooleanIndica si los datos de estados están cargando.
loadCitysbooleanIndica si los datos de ciudades están cargando.

Usos

  • Uso básico
const { onChangeCSC, value } = useCSC({
  defaultValue: {
    country: {
      id: 42,
      text: "México",
      code: "MX",
      code_phone: "+52",
    },
  },
});
onChangeCSC("country")({
  id: 82,
  text: "Colombia",
  code: "CO",
  code_phone: "+57",
});
  • Cambiar ciudad
const { onChangeCSC } = useCSC();
onChangeCSC("city")({
  id: 465167,
  id_state: 1700,
  text: "Medellín",
  id_country: 82,
  nameAve: "MEDELLIN(ANTIOQUIA)",
});