Maison > interface Web > Voir.js > Comment utiliser Vue et Firebase Cloud Firestore pour implémenter une application de newsletter avec diffusion de messages en temps réel

Comment utiliser Vue et Firebase Cloud Firestore pour implémenter une application de newsletter avec diffusion de messages en temps réel

王林
Libérer: 2023-09-13 08:12:29
original
1305 Les gens l'ont consulté

如何利用Vue和Firebase Cloud Firestore实现实时消息推送的时事通讯应用

Comment utiliser Vue et Firebase Cloud Firestore pour implémenter une application de newsletter avec envoi de messages en temps réel

Introduction :
Avec le développement d'Internet, les informations d'actualité sont devenues de plus en plus importantes pour l'acquisition d'informations et la communication des personnes. . L'application de transmission de messages en temps réel peut aider les utilisateurs à obtenir facilement les dernières informations sur l'actualité. Cet article explique comment utiliser Vue et Firebase Cloud Firestore pour implémenter une application de newsletter push de messages en temps réel et fournit des exemples de code spécifiques.

  1. Préparation
    Tout d'abord, vous devez installer Vue CLI et créer un nouveau projet Vue. Exécutez la commande suivante dans le terminal :
npm install -g vue-cli
vue create news-app
Copier après la connexion

Une fois l'installation terminée, allez dans le répertoire du projet et démarrez le serveur de développement :

cd news-app
npm run serve
Copier après la connexion
  1. Configurer le projet Firebase
    Tout d'abord, nous devons créer un projet Firebase et activer le Firestore base de données. Dans la console Firebase, sélectionnez "Créer un nouveau projet" et suivez les instructions pour terminer la création du projet.

Sur la page de présentation du projet, cliquez sur "Ajouter Firebase à votre application Web" et suivez les instructions pour copier les informations de configuration générées. Enregistrez ces informations dans un fichier .env dans votre projet comme ceci :

VUE_APP_FIREBASE_API_KEY=your_api_key
VUE_APP_FIREBASE_AUTH_DOMAIN=your_auth_domain
VUE_APP_FIREBASE_DATABASE_URL=your_database_url
VUE_APP_FIREBASE_PROJECT_ID=your_project_id
VUE_APP_FIREBASE_STORAGE_BUCKET=your_storage_bucket
VUE_APP_FIREBASE_MESSAGING_SENDER_ID=your_messaging_sender_id
VUE_APP_FIREBASE_APP_ID=your_app_id
Copier après la connexion
  1. Installez le SDK Firebase
    Ensuite, nous devons installer et configurer le SDK Firebase dans le projet Vue. Exécutez la commande suivante dans le terminal :
npm install firebase
Copier après la connexion

Créez un fichier appelé firebase.js et ajoutez le code suivant au fichier : firebase.js的文件,并将以下代码添加到文件中:

import firebase from 'firebase/app'
import 'firebase/firestore'

const config = {
  apiKey: process.env.VUE_APP_FIREBASE_API_KEY,
  authDomain: process.env.VUE_APP_FIREBASE_AUTH_DOMAIN,
  databaseURL: process.env.VUE_APP_FIREBASE_DATABASE_URL,
  projectId: process.env.VUE_APP_FIREBASE_PROJECT_ID,
  storageBucket: process.env.VUE_APP_FIREBASE_STORAGE_BUCKET,
  messagingSenderId: process.env.VUE_APP_FIREBASE_MESSAGING_SENDER_ID,
  appId: process.env.VUE_APP_FIREBASE_APP_ID
}

firebase.initializeApp(config)

export const db = firebase.firestore()
Copier après la connexion
  1. 创建消息推送组件
    现在,我们可以创建一个接收实时消息推送的组件。在Vue项目中创建一个名为NewsFeed.vue的组件,并将以下代码添加到文件中:
<template>
  <div class="news-feed">
    <h2>时事资讯</h2>
    <ul>
      <li v-for="(news, index) in newsList" :key="index">{{ news.content }}</li>
    </ul>
  </div>
</template>

<script>
import { db } from '@/firebase'

export default {
  data() {
    return {
      newsList: []
    }
  },
  mounted() {
    db.collection('news').orderBy('timestamp').onSnapshot(snapshot => {
      this.newsList = snapshot.docChanges().map(change => change.doc.data())
    })
  }
}
</script>

<style scoped>
.news-feed {
  margin-top: 20px;
}
</style>
Copier après la connexion

在上面的代码中,我们使用Firestore的onSnapshot方法来监听news集合的变化。通过snapshot.docChanges()方法获取最新的消息推送,并将其更新到newsList数组中。

  1. 使用消息推送组件
    最后,我们需要在Vue项目中使用创建的消息推送组件。打开App.vue
    <template>
      <div id="app">
        <news-feed></news-feed>
      </div>
    </template>
    
    <script>
    import NewsFeed from './components/NewsFeed.vue'
    
    export default {
      name: 'App',
      components: {
        NewsFeed
      }
    }
    </script>
    Copier après la connexion
      Créez un message Composant Push
    Maintenant, nous pouvons créer un composant qui reçoit les messages push en temps réel. Créez un composant nommé NewsFeed.vue dans votre projet Vue et ajoutez le code suivant au fichier :

    rrreee

    Dans le code ci-dessus, nous utilisons la méthode onSnapshot code> de Firestore pour suivre les changements dans la collection actualités. Obtenez les dernières nouvelles via la méthode snapshot.docChanges() et mettez-la à jour dans le tableau newsList.

      Utilisez le composant push de message🎜Enfin, nous devons utiliser le composant push de message créé dans le projet Vue. Ouvrez le fichier App.vue et ajoutez le code suivant au fichier : 🎜🎜rrreee🎜Maintenant, notre application newsletter est terminée ! Démarrez le serveur de développement et ouvrez l'application dans votre navigateur pour recevoir les dernières nouvelles en temps réel. 🎜🎜Résumé : 🎜Cet article explique comment utiliser Vue et Firebase Cloud Firestore pour implémenter une application de newsletter avec envoi de messages en temps réel. En utilisant la base de données Firestore de Firebase et les fonctionnalités de liaison de données réactives de Vue, nous pouvons facilement implémenter la fonctionnalité de transmission de messages en temps réel. J'espère que cet article vous aidera à comprendre comment utiliser Vue et Firebase pour créer des applications en temps réel. 🎜

    Ce qui précède est le contenu détaillé de. pour plus d'informations, suivez d'autres articles connexes sur le site Web de PHP en chinois!

Étiquettes associées:
source:php.cn
Déclaration de ce site Web
Le contenu de cet article est volontairement contribué par les internautes et les droits d'auteur appartiennent à l'auteur original. Ce site n'assume aucune responsabilité légale correspondante. Si vous trouvez un contenu suspecté de plagiat ou de contrefaçon, veuillez contacter admin@php.cn
Tutoriels populaires
Plus>
Derniers téléchargements
Plus>
effets Web
Code source du site Web
Matériel du site Web
Modèle frontal