Saltar al contenido principal
Neural Nativev0.1.0-beta.1Documentación

Cómo se actualiza una pantalla

La biblioteca funciona sin Zone.js. Angular sigue las signals leídas por las plantillas; al cambiarlas se notifica que una vista necesita actualizarse. También participan los listeners enlazados en la plantilla y otras APIs de notificación Angular. Utiliza signals escribibles para los valores y computed para el estado derivado en lugar de mantener banderas mutables duplicadas.

Conserva la configuración de arranque de la plantilla Angular Native. Neural Native no exige añadir Zone.js ni un proveedor de inicialización independiente. Angular 22 proporciona el comportamiento de detección de cambios por defecto, por lo que estos ejemplos no declaran un ajuste changeDetection redundante.

Estado y una etiqueta derivada

Coloca el componente siguiente dentro del neu-theme raíz de la aplicación.

src/app/counter.component.ts
import { Component, computed, signal } from '@angular/core';
import { Text, View } from '@ng-native/components';
import { NeuButtonComponent } from '@neural-ui/native/button';

@Component({
  selector: 'app-counter',
  imports: [Text, View, NeuButtonComponent],
  template: `
    <view class="content">
      <text class="label">{{ summary() }}</text>
      <neu-button label="Add item" (pressed)="addItem()" />
    </view>
  `,
  styles: `
    .content { padding: 24px; gap: 16px; }
    .label { color: var(--neu-text); }
  `,
})
export class CounterComponent {
  readonly count = signal(0);
  readonly summary = computed(() => 'Items: ' + this.count());

  addItem(): void {
    this.count.update(value => value + 1);
  }
}

Cada pulsación actualiza la signal count. El valor derivado summary se recalcula y la plantilla lee summary(). No hacen falta temporizadores, actualizaciones manuales de la vista ni efectos de sincronización.

Callbacks externos y texto nativo

Cuando un servicio del dispositivo o de la aplicación devuelve datos de forma asíncrona, escribe el resultado en una signal que consuma la plantilla. Una asignación a una propiedad normal de un objeto no constituye por sí sola una notificación fiable de actualización. Limpia las suscripciones y listeners al destruir la pantalla o servicio que los contiene.

La biblioteca gestiona internamente la sincronización de eventos de texto nativos. No añadas ApplicationRef.tick() a los handlers de tus campos para compensarla. Conserva los enlaces normales con signals o FormField y prueba el teclado real de tu aplicación, incluida la autocorrección y la selección.