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.
npm install -g vue-cli vue create news-app
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
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
npm install firebase
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()
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>
在上面的代码中,我们使用Firestore的onSnapshot
方法来监听news
集合的变化。通过snapshot.docChanges()
方法获取最新的消息推送,并将其更新到newsList
数组中。
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>
NewsFeed.vue
dans votre projet Vue et ajoutez le code suivant au fichier : rrreeeDans 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
.
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!