3 votes

angular2 : service avec un modèle ?

J'essaie de créer un service pour afficher des alertes (en cas d'échec de l'envoi d'un formulaire). Ce service sera utilisé sur plusieurs formulaires de mon projet et je pensais pouvoir utiliser un service indépendant pour cela. Le problème est le suivant : pour cette alerte, j'ai besoin de code HTML à un certain endroit de mon formulaire, donc ce que je dois savoir est : quelle est la meilleure pratique pour cela ?

Puis-je définir un modèle pour mon service ? Et comment puis-je utiliser ce modèle dans mon formulaire qui utilise le service ?

2voto

Günter Zöchbauer Points 21340

Si l'affichage des alertes signifie l'affichage d'une fenêtre popup, alors il devrait s'agir d'un composant. Les composants ont une vue qui est ajoutée au DOM.

Vous pouvez partager un service global qui permet à d'autres composants, directives et services de communiquer avec vos AlertsComponent et passer des chaînes ou des types de composants à afficher dans l'alerte. Pour plus de détails, voir https://angular.io/docs/ts/latest/cookbook/component-communication.html

J'utiliserais ViewContainerRef.createComponent() comme cela a été démontré dans Onglets dynamiques en Angular 2 avec des composants choisis par l'utilisateur en cliquant dessus pour afficher des composants arbitraires comme contenu de l'alerte si vous avez besoin d'un support HTML personnalisé avec des liaisons Angular dans le contenu de l'alerte.

2voto

musale Points 207

J'ai eu du mal à utiliser les paquets angular2 pour les notifications puis j'ai décidé de créer ma propre notification pour un système sur lequel je travaille. J'ai cherché en ligne jusqu'à ce que je trouve Le poste de Mathew Ross Consultez-le et voyez s'il vous guide, d'une manière ou d'une autre.

Prograide.com

Prograide est une communauté de développeurs qui cherche à élargir la connaissance de la programmation au-delà de l'anglais.
Pour cela nous avons les plus grands doutes résolus en français et vous pouvez aussi poser vos propres questions ou résoudre celles des autres.

Powered by:

X