Inicio
NexoPOS

ns-field

Descripción general

El componente ns-field es el renderizador genérico de campos utilizado por los formularios de NexoPOS. Recibe una definición de campo y delega el renderizado al componente correspondiente según field.type.

Utiliza este componente cuando se genere un formulario a partir de un esquema CRUD o cuando un módulo necesite renderizar un campo dinámicamente sin elegir manualmente el componente concreto.

Tipos de campos compatibles

  • texto, contraseña, correo electrónico, número y tel renderizan ns-input.
  • oculto renderiza un input oculto.
  • la fecha renderiza ns-date.
  • selecciona renders ns-select.
  • search-select renderiza ns-search-select.
  • El área de texto representa ns-textarea.
  • la casilla de verificación renderiza ns-checkbox.
  • La selección múltiple renderiza ns-multiselect.
  • inline-multiselect renderiza ns-inline-multiselect.
  • select-audio renderiza ns-select-audio.
  • switch renderiza ns-switch.
  • los renders de medios ns-media-input.
  • ckeditor renderiza ns-ckeditor.
  • El selector de fecha y hora renderiza ns-date-time-picker.
  • daterangepicker renderiza ns-daterange-picker.
  • carga personalizada field.component desde nsExtraComponents o nsComponents.

Props y eventos

  • field: la definición del campo que se debe renderizar.
  • siblings: campos relacionados opcionales pasados por el formulario principal.
  • Emite blur, change, saved, keypress y keyup.
<ns-field
    :field="field"
    :siblings="fields"
    @change="handleFieldChange"
    @saved="handleSaved"
/>

Campos personalizados

Para field.type = "custom", establece field.component en el nombre de un componente registrado. El componente se carga primero desde nsExtraComponents y luego desde nsComponents. Para el registro de componentes de módulo, consulta Inyectar un componente de Vue.