J'ai écrit la page front-end en utilisant vue. J'ai déjà écrit l'API similaire et différente. Il vous suffit de transférer l'ID de l'article vers l'API. Il existe également une API pour déterminer si vous l'avez aimé. Les articles sont déjà obtenus via l'API
.
Le problème que je rencontre maintenant est que je souhaite apporter des modifications au style. Autrement dit, lorsque la page sera initialement chargée, je déterminerai si vous avez aimé cet article, puis le style sera le même. Mais l'article est généré par v-repeat (similaire à ng-repeat). J'ai ajouté un filtre à l'article pour voir si l'article actuel a été apprécié et j'ai réécrit le dom dans le rappel Ajax. Cependant, en raison de problèmes asynchrones, le dom réécrit a été rendu par vue. C'est invalide. Existe-t-il un bon moyen ?
J'ai fait quelque chose de similaire, mais en utilisant angulairejs
C'est pareil qu'avant, mais j'ai pensé à un moyen pour la classe likes, vous pouvez voir si ça convient :
Par exemple, nice est une valeur booléenne dans le tableau des listes (renvoyée par le serveur). Si le point de jugement n'a pas été cliqué, utilisez cette valeur pour parcourir la classe du bouton J'aime
lors du premier chargement. Ajoutez ensuite un ng-click au bouton J'aime pour envoyer http. Une fois l'envoi réussi, modifiez la valeur booléenne de list.nice, puis changez l'état. Pour déterminer la position de list.nice, transmettez un $index au. méthode qui encapsule http. Ok.
La réécriture du dom que vous avez mentionné ne modifie pas réellement la valeur de la liaison bidirectionnelle. C'est toujours la pensée traditionnelle de Jquery. Changer la valeur de liaison devrait être une méthode plus appropriée.
Vous devez utiliser les propres méthodes de vue pour gérer les styles au lieu de modifier manuellement le dom