Le modèle observateur (également appelé modèle éditeur-abonné) devrait être l'un des modèles les plus couramment utilisés. Il est largement utilisé dans de nombreux langages, y compris les événements dom avec lesquels nous sommes habituellement en contact. Il est également implémenté entre js. et dom Un modèle d'observateur.
Tant que vous vous abonnez à l'événement click du div. Lorsque le div est cliqué, la fonction click sera déclenchée.
Alors, qu’est-ce que le modèle d’observateur ? Examinons d’abord le modèle d’observateur dans la vie.
Il y a un dicton célèbre à Hollywood. "Ne m'appelle pas, je t'appellerai." Cette phrase explique les tenants et les aboutissants du modèle d'observateur. Où « je » est l'éditeur et « vous » est l'abonné.
Pour un autre exemple, lorsque je venais dans l'entreprise pour un entretien, chaque intervieweur me disait après l'entretien : "Veuillez laisser vos coordonnées et nous vous informerons s'il y a des nouvelles." Ici, « je » est l'abonné et l'intervieweur est l'éditeur. Je n’ai donc pas besoin de poser des questions sur les résultats de l’entretien tous les jours ou toutes les heures. L’initiative de la communication appartient à l’intervieweur. Et j'ai juste besoin de fournir des informations de contact.
Le modèle d'observateur peut très bien réaliser un découplage entre deux modules. Supposons que je développe un jeu HTML5 en équipe. Lorsque le jeu démarre, certains éléments d'image doivent être chargés. Après avoir chargé ces images, la logique du jeu est exécutée. Supposons qu'il s'agisse d'un projet qui nécessite une coopération entre plusieurs personnes, j'ai terminé les modules Gamer et Map et mon collègue A a écrit un chargeur d'images loadImage.
Le code de loadImage est le suivant :
Une fois loadImage terminé, il ne se soucie pas de ce qui se passera dans le futur, car son travail est terminé. Il lui suffit ensuite de publier un signal.
Ensuite, les objets qui écoutent l'événement 'ready' de loadImage seront notifiés. Tout comme le dernier exemple d'interview, l'intervieweur ne se soucie pas du tout de l'endroit où les enquêteurs iront manger après avoir reçu les résultats de l'interview. pour mener l'entretien. Rassemblez ensemble les CV des candidats. Lorsque les résultats de l'entretien seront publiés, vous serez averti un par un en fonction du numéro de téléphone figurant sur le CV
.Après avoir parlé de tant de concepts, donnons une mise en œuvre concrète. Le processus de mise en œuvre est en fait très simple. L'intervieweur jette le CV dans une boîte, puis l'intervieweur prend le CV dans la boîte et appelle un par un. bon moment pour les informer du résultat
Enfin, utilisez le mode observateur pour réaliser une petite application TV adulte.