Nous essayons de modifier les identifiants CSS basés sur le temps. Le point est que, actuellement, il manipule le corps. Comment pouvons-nous le modifier en une manipulation de la section?
pièce angulaire forte> p> html fort> p> document.body.id = "b"+int;
3 Réponses :
document.getelementByID ("div_top1"). setattribute ("id", "div_top2"); p>
Vous pouvez utiliser cela pour modifier la section ID de section. P>
Il y a une section avec classe sur laquelle il devrait être mis en œuvre.
Ce n'est pas une bonne solution en angulaire, vous ne devriez pas rechercher le DOM de cette manière en angulaire.
@benshabatnoam alors comment la meilleure solution sera-t-elle pour l'angulaire?
Vous pouvez le faire grâce à la fonctionnalité de visionnage angulaire
dans votre HTML: p> dans votre composant TS Fichier P> import { Component, ViewChild, ElementRef, AfterViewInit } from '@angular/core';
// ....
export MyComponernt implement AfterViewInit {
// ....
@ViewChild('foo') foo: ElementRef;
// ....
ngAfterViewInit(): void {
// this is how you manipulate element id properly thanks to angular viewChild feature
this.foo.nativeElement.id = 'something';
}
// ....
}
Merci pour votre réponse, je vais le tester.
La propriété de NativeLement est indéfinie.
Ajouter un variable de référence de modèle em> dans votre modèle pour la section Ajouter un Vous pouvez maintenant l'utiliser comme ceci dans le fichier TS du composant: p>
Voir cette simple Démo P> Mise à jour : strong> p> Notez que vous utilisez mise à jour de la démonstration pour le montrer en action. P> OL> code> Tag: p>
@ViewChild code> Decoratored Variable dans le fichier TS du composant pour obtenir cet élément: P>
Fonction FUNC () CODE>, cela vous entraînera un problème de précaution avec l'utilisation de
Ceci code> comme composant objet. Une façon de résoudre ce problème consiste à utiliser
lid code> fonction: p>
Merci beaucoup. Je vais vérifier :)
Il dit que NativeLement est indéfini.
Qu'est-ce qui peut le causer?
Je suppose que vous avez fait quelque chose de mal, examine de plus près la mise en œuvre et la démo. Assurez-vous que votre nom # est égal au @viewchild ('nom') et que le nom de la variable de menu de visualisation est celui que vous essayez de référencer comme ceci.name.Name.Name.NATIVELEMENTE CODE>
J'ai copié le code de votre réponse uniquement à l'intérieur de composant.TS et HTML. Vérifié une fois de plus. Tout est pareil.
Maintenant, je comprends pourquoi cela ne fonctionne pas pour vous. Il s'agit d'une question d'étendue en raison de la fonction Func () ... code>, je vais mettre à jour ma réponse pour vous aider avec ça