Support Angular 16's new component route data binding
Nadie ha tomado este issue todavía.
Evaluación
- Dificultad
- 3/5
- Tiempo estimado
- 1-2 días
- Aptitud para principiantes
- 45/100
- Tipo de issue
- Error
- Claridad
- Bastante claro
- Estado de actividad
- Estancado
- Stack tecnológico
- angular, typescript
Línea de trabajo
Comienza en NativeScriptRouterModule.forRoot e inspecciona cómo su configuración de rutas gestiona bindToComponentInputs y la advertencia de outlet. Reproduce el ejemplo de Angular 16 con datos de ruta y un @Input; el trabajo estará terminado cuando la advertencia desaparezca y el input del componente contenga los datos de la ruta durante la inicialización.
Escrito por el modelo de indexación a partir del texto del issue.
Descripción
Environment
Provide version numbers for the following components (information can be retrieved by running tns info in your project folder or by inspecting the package.json of the project):
- NativeScript-Angular: 16
- Angular: 16
Describe the bug
In angular 16, you can add bindToComponentInputs to Angular's Router Module imports: [NativeScriptRouterModule.forRoot(routes, { bindToComponentInputs: true })], to automatically populate @Input() properties in the component. Doing so in Nativescript—Angular warns the dev
CONSOLE WARN: 'withComponentInputBinding' feature is enabled but this application is using an outlet that may not support binding to component inputs.
To Reproduce
Add bindToComponentInputs: true to the forRoot function's 2nd parameter config object.
import { NgModule } from '@angular/core';
@NgModule({
imports: [NativeScriptRouterModule.forRoot(routes, { bindToComponentInputs: true })],
})
export class AppRoutingModule {}
export const testPageRoute: Route = {
path: ':page',
component: TestComponent ,
data: {'test': 'test-text'}
};
import { Component, Input, OnInit } from '@angular/core';
@Component({
selector: 'test-component',
templateUrl: './test-component.html',
})
export class TestComponent implements OnInit {
@Input() public test;
public ngOnInit(): void {
console.log(this.test); // should populate with 'test-text'
}
}
Expected behavior
this.test should populate with the data from the route without having to query in the OnInit lifecycle.
Additional context
https://blog.angular.io/angular-v16-is-here-4d7a28ec680d#398f
- Lenguaje dominante
- TypeScript
- Estrellas
- 55
- Forks
- 13
- Merge medio
- 16 min
- PR fusionados (30 d)
- 1
Guía de contribución
Primeros pasos
- Lee el issue completo y luego la guía de contribución del proyecto.
- Comenta en el issue que vas a ocuparte — evita que dos personas hagan lo mismo.
- Haz un fork del repositorio y trabaja en una rama.
- Abre un pull request que haga referencia al número del issue.
Más de NativeScript/angular
-
Dificultad 4/5 3-5 días Aptitud para principiantes 45/100
NativeScript/angular#170 · 1 comentario ·
-
Dificultad 5/5 Más de una semana Aptitud para principiantes 35/100
NativeScript/angular#164 ·
-
My types are gone Abierto
Dificultad 2/5 1-3 horas Aptitud para principiantes 45/100
NativeScript/angular#163 · 1 comentario ·
-
Dificultad 4/5 3-5 días Aptitud para principiantes 38/100
NativeScript/angular#158 · 1 reacción ·
-
Dificultad 2/5 1-3 horas Aptitud para principiantes 35/100
NativeScript/angular#155 ·
Todos los issues de NativeScript/angular
Issues similares
-
Dificultad 2/5 1-3 horas Aptitud para principiantes 78/100
-
area:tools bug good first issue help wanted priority:P2
Dificultad 2/5 1-3 horas Aptitud para principiantes 90/100
TaewoooPark/Motifcode#14 ·
-
bug
Dificultad 2/5 1-3 horas Aptitud para principiantes 84/100
newrelic-experimental/preflight#793 · 1 comentario ·
-
bug 🐞
Dificultad 2/5 1-3 horas Aptitud para principiantes 68/100
-
[Bounty proposal] fix(web): memory insights count an evening memory on the next day ($25 proposed) Abierto
Dificultad 2/5 1-3 horas Aptitud para principiantes 84/100
BasedHardware/omi#15320 ·