Angulaire 2 déclarations en composant spécifique
Dernière fois que je l'utilise Angular2 les directives sont encore présentes, mais maintenant il n'y a donc appelé les déclarations en application.les modules.ts. La Question est, si je vais utiliser une directive qu'en composant spécifique et ne pas sur-le-main, comment puis-je le faire?
clients.composante.ts
import { Component } from '@angular/core';
@Component({
selector: 'app-customers',
templateUrl: 'app/customer/customers.component.html'
})
export class CustomersComponent {
customers = [
{ id: 1, name: 'Mix'},
{ id: 2, name: 'Ian'},
{ id: 3, name: 'Aniel'},
{ id: 4, name: 'Jess'},
{ id: 5, name: 'Jusi'},
];
}
client.composante.ts
import { Component, Input } from '@angular/core';
@Component({
selector: 'app-customer',
templateUrl: 'app/customer/customer.component.html'
})
export class CustomerComponent {
@Input() customer: {id: number, name: string};
myColor = 'gray';
}
app.le module.ts
import { NgModule } from '@angular/core';
import { BrowserModule } from '@angular/platform-browser';
import { FormsModule } from '@angular/forms';
import { AppComponent } from './app.component';
import { CustomerComponent } from './customer/customer.component';
import { CustomersComponent } from './customer/customers.component';
@NgModule({
imports: [ BrowserModule, FormsModule ],
declarations: [ AppComponent, CustomerComponent, CustomersComponent ],
bootstrap: [ AppComponent ]
})
export class AppModule { }
Quoi je pense, c'est quand j'ai mis un composant dans une déclaration, chaque composant peut accéder qu'à la différence avant que je ne peut déclarer dans un spécifiques. S'il vous plaît corrigez-moi si je me trompe et s'il vous plaît indiquer s'il existe une meilleure alternative en déclarant directives.
Lorsque vous déclarez dans le module, et tous les autres composants dans le module peut l'utiliser sans avoir à re-déclarer. Pourquoi est-ce un problème si vous voulez juste simplement l'utiliser dans certains composants?
De mon point de vue, c'est comme de demander pourquoi avons-nous besoin de réduire ou de cesser d'utiliser des variables globales? Afin de restreindre l'accès à un particulier de la fonction ou de la méthode à droite? Et il ne sera pas foiré si vous avez accidentellement accéder à la variable globale dans la mauvaise méthode.
Comment sur la création d'un NgModule pour votre CustomerComponent? Serait-ce le fixer à vos besoins?
De mon point de vue, c'est comme de demander pourquoi avons-nous besoin de réduire ou de cesser d'utiliser des variables globales? Afin de restreindre l'accès à un particulier de la fonction ou de la méthode à droite? Et il ne sera pas foiré si vous avez accidentellement accéder à la variable globale dans la mauvaise méthode.
Comment sur la création d'un NgModule pour votre CustomerComponent? Serait-ce le fixer à vos besoins?
Components
ne sont pas variable, ils sont plus comme la classe, et il n'y a rien de mal à avoir une définition de classe est mondialement connue par tous les membres d'un module. À l'aide du composant sélecteur dans le modèle (par exemple,<app-customer>
) est comme l'instanciation d'un nouvel objet de cette CustomerComponent
classe, et <app-customer>
dans ListingComponentA
est différent de celui <app-customer
dans ListingComponentB
, de sorte que vous ne pouvez pas accidentellement y accéder en dehors de la portée.OriginalL'auteur Mix Austria | 2016-09-22
Vous devez vous connecter pour publier un commentaire.
Vous pouvez mettre de la déclaration des constituants dans un Fonctionnalité Du Module.
Le Fonctionnalité Du Module doit être importé dans l'Application du Module.
Maintenant c'est à vous, si vous considérez que votre composant c'est une fonctionnalité et méritent un Module séparé ou non.
Je suis conscient que tout ce truc avec les modules n'est pas si simple et clair comme il a été avec les directives, mais il y avait certaines choses dans Angular2 qui n'a pas pu être résolu d'une autre manière.
Documentation : https://angular.io/guide/feature-modules
Ce qui arrive quand les 2 sont équipés de modules contiennent un composant avec le même nom maintenant?
Vous ne devriez jamais avoir un composant de 2 modules différents, si le composant est utilisé plus d'une fois, alors il devrait être dans un module Partagé : angular.io/docs/ts/latest/guide/ngmodule.html#!#partagé-module
assez déçu par angulaire pour encourager ce terrible approche fondamentalement, il décourage la séparation des fonctionnalités ou des modèles dans le quick sous-composantes, parce que vous avez toujours besoin de nouveaux modules - qui, dans le cas de l'utilisation de sous-composants pour de simples fins (p. ex. code de structuration et d'éviter les longues files) est simplement surpuissant de l'omi
lien brisé. Veuillez mettre à jour avec cette lien
OriginalL'auteur tibbus