Heim Web-Frontend View.js So implementieren Sie mit Vue und Firebase Cloud Firestore eine Newsletter-Anwendung mit Echtzeit-Datensynchronisierung

So implementieren Sie mit Vue und Firebase Cloud Firestore eine Newsletter-Anwendung mit Echtzeit-Datensynchronisierung

Sep 13, 2023 am 08:27 AM
vue firebase 实时同步

如何使用Vue和Firebase Cloud Firestore实现数据实时同步的时事通讯应用

So verwenden Sie Vue und Firebase Cloud Firestore, um eine Newsletter-Anwendung mit Echtzeit-Datensynchronisierung zu implementieren

Einführung:
Im digitalen Zeitalter ist die Informationserfassung in Echtzeit zu einem der wichtigsten Bedürfnisse geworden. Die Echtzeit-Synchronisierungsfunktion von Newsletter-Apps hilft Benutzern, über die neuesten Nachrichten, Ereignisse und Updates auf dem Laufenden zu bleiben. In diesem Artikel wird erläutert, wie Sie mit Vue.js und Firebase Cloud Firestore eine Newsletter-Anwendung mit Echtzeit-Datensynchronisierung implementieren, und entsprechende Codebeispiele bereitstellen.

1. Was ist Vue.js und Firebase Cloud Firestore? Vue.js ist ein beliebtes JavaScript-Framework zum Erstellen von Benutzeroberflächen. Es ist leicht zu erlernen, flexibel und effizient und wird häufig in der Entwicklung von Single-Page-Anwendungen und mobilen Apps eingesetzt.

Firebase Cloud Firestore ist ein flexibler Echtzeit-Cloud-Datenbankdienst. Es bietet eine einfache Möglichkeit, die Daten einer Anwendung zu speichern und zu synchronisieren, ohne dass Sie selbst einen Backend-Server erstellen und warten müssen.

2. Projektvorbereitung

  1. Vue.js-Projekt erstellen

    Erstellen Sie zunächst ein neues Vue.js-Projekt über die Vue-CLI. Öffnen Sie ein Terminal und führen Sie den folgenden Befehl aus:

    vue create times-news-app
    Nach dem Login kopieren

    Wählen Sie Ihre bevorzugten Konfigurationsoptionen aus und warten Sie, bis die Projekterstellung abgeschlossen ist.

  2. Firebase Cloud Firestore konfigurieren
  3. Erstellen Sie ein neues Projekt in der Firebase-Konsole und fügen Sie die Cloud Firestore-Datenbank hinzu. Rufen Sie Ihre Firebase-Konfigurationsinformationen in den Projekteinstellungen ab.
Öffnen Sie das Vue.js-Projekt, erstellen Sie eine Datei mit dem Namen .env.local im Stammverzeichnis des Projekts und fügen Sie der Datei die folgenden Konfigurationsinformationen hinzu:

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
Nach dem Login kopieren
.env.local的文件,并将以下配置信息添加到该文件中:

<template>
  <div>
 <h1>时事新闻</h1>
 <ul>
   <li v-for="newsItem in newsList" :key="newsItem.id">
     {{ newsItem.title }}
   </li>
 </ul>
  </div>
</template>

<script>
import db from '@/firebaseConfig.js';

export default {
  data() {
 return {
   newsList: []
 };
  },
  created() {
 db.collection('news')
   .orderBy('timestamp', 'desc')
   .onSnapshot((snapshot) => {
     this.newsList = snapshot.docs.map((doc) => {
       return {
         id: doc.id,
         title: doc.data().title
       };
     });
   });
  }
};
</script>
Nach dem Login kopieren

YOUR_API_KEYYOUR_AUTH_DOMAIN等替换为你在Firebase控制台中获得的实际值。

三、创建Vue组件
首先,我们需要创建两个Vue组件:一个用于显示新闻列表,另一个用于发布新的新闻。

  1. NewsList.vue

    <template>
      <form @submit.prevent="submitNews">
     <h2>发布新闻</h2>
     <input type="text" v-model="newsText" placeholder="请输入新闻标题" />
     <button type="submit">发布</button>
      </form>
    </template>
    
    <script>
    import db from '@/firebaseConfig.js';
    
    export default {
      data() {
     return {
       newsText: ''
     };
      },
      methods: {
     submitNews() {
       db.collection('news')
         .add({
           title: this.newsText,
           timestamp: new Date()
         })
         .then(() => {
           this.newsText = '';
         })
         .catch((error) => {
           console.error('发布新闻失败:', error);
         });
     }
      }
    };
    </script>
    Nach dem Login kopieren
  2. NewNews.vue

    import Vue from 'vue';
    import VueRouter from 'vue-router';
    import NewsList from '@/views/NewsList.vue';
    import NewNews from '@/views/NewNews.vue';
    
    Vue.use(VueRouter);
    
    const routes = [
      {
        path: '/',
        name: 'NewsList',
        component: NewsList
      },
      {
        path: '/new',
        name: 'NewNews',
        component: NewNews
      }
    ];
    
    const router = new VueRouter({
      mode: 'history',
      base: process.env.BASE_URL,
      routes
    });
    
    export default router;
    Nach dem Login kopieren

四、配置路由和样式
src/router/index.js文件中配置路由:

<template>
  <div id="app">
    <router-link to="/">新闻列表</router-link>
    <router-link to="/new">发布新闻</router-link>
    <router-view />
  </div>
</template>

<style>
#app {
  font-family: Arial, Helvetica, sans-serif;
  text-align: center;
}
</style>
Nach dem Login kopieren

src/App.vue文件中设置基本样式:

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

const firebaseConfig = {
  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(firebaseConfig);

const db = firebase.firestore();

export default db;
Nach dem Login kopieren

五、集成Firebase和Vue应用
src/firebaseConfig.js文件中配置Firebase:

import Vue from 'vue';
import App from './App.vue';
import router from './router';

Vue.config.productionTip = false;

new Vue({
  router,
  render: (h) => h(App)
}).$mount('#app');
Nach dem Login kopieren

最后,在src/main.js文件中集成Vue和Firebase:

npm run serve
Nach dem Login kopieren

六、运行应用
在终端中执行以下命令,运行应用:

rrreee

访问http://localhost:8080Ersetzen Sie Ersetzen Sie YOUR_API_KEY , YOUR_AUTH_DOMAIN usw. mit den tatsächlichen Werten, die Sie in der Firebase-Konsole erhalten.

3. Vue-Komponenten erstellen
Zuerst müssen wir zwei Vue-Komponenten erstellen: eine zum Anzeigen der Nachrichtenliste und die andere zum Veröffentlichen neuer Nachrichten.

    NewsList.vue
  • rrreee
  • NewNews.vue
  • rrreee
🎜 4. Routing und Stil konfigurieren 🎜Routing in der Datei src/router/index.js konfigurieren: 🎜rrreee🎜 Legen Sie den Grundstil in der Datei src/App.vue fest: 🎜rrreee🎜 5. Integrieren Sie Firebase- und Vue-Anwendungen 🎜Konfigurieren Sie Firebase in der Datei src/firebaseConfig.js: 🎜 rrreee 🎜Zuletzt integrieren Sie Vue und Firebase in die Datei src/main.js: 🎜rrreee🎜 6. Führen Sie die Anwendung aus 🎜Führen Sie den folgenden Befehl im Terminal aus, um die Anwendung auszuführen: 🎜rrreee🎜Visit http://localhost:8080, Sie sehen eine Newsletter-Anwendung mit Echtzeit-Datensynchronisationsfunktion. 🎜🎜Zusammenfassung: 🎜In diesem Artikel wird erläutert, wie Sie mit Vue.js und Firebase Cloud Firestore eine Newsletter-Anwendung mit Echtzeit-Datensynchronisierung implementieren. Wir haben zwei Vue-Komponenten zum Anzeigen der Nachrichtenliste und zum Veröffentlichen von Nachrichten erstellt und anschließend Routing und Stile konfiguriert. Abschließend nutzen wir Firebase, um die Daten zu speichern, zu synchronisieren und in die Vue-App zu integrieren. Mit diesen Schritten können wir ganz einfach eine Newsletter-App mit Echtzeit-Synchronisierungsfunktionen erstellen. 🎜🎜Referenzmaterialien: 🎜🎜🎜Offizielle Dokumentation von Vue.js: https://vuejs.org/🎜🎜Offizielle Dokumentation von Firebase: https://firebase.google.com/docs🎜🎜Offizielle Dokumentation von Vue CLI: https:// cli.vuejs.org/🎜🎜

Das obige ist der detaillierte Inhalt vonSo implementieren Sie mit Vue und Firebase Cloud Firestore eine Newsletter-Anwendung mit Echtzeit-Datensynchronisierung. Für weitere Informationen folgen Sie bitte anderen verwandten Artikeln auf der PHP chinesischen Website!

Erklärung dieser Website
Der Inhalt dieses Artikels wird freiwillig von Internetnutzern beigesteuert und das Urheberrecht liegt beim ursprünglichen Autor. Diese Website übernimmt keine entsprechende rechtliche Verantwortung. Wenn Sie Inhalte finden, bei denen der Verdacht eines Plagiats oder einer Rechtsverletzung besteht, wenden Sie sich bitte an admin@php.cn

Heiße KI -Werkzeuge

Undresser.AI Undress

Undresser.AI Undress

KI-gestützte App zum Erstellen realistischer Aktfotos

AI Clothes Remover

AI Clothes Remover

Online-KI-Tool zum Entfernen von Kleidung aus Fotos.

Undress AI Tool

Undress AI Tool

Ausziehbilder kostenlos

Clothoff.io

Clothoff.io

KI-Kleiderentferner

AI Hentai Generator

AI Hentai Generator

Erstellen Sie kostenlos Ai Hentai.

Heißer Artikel

R.E.P.O. Energiekristalle erklärten und was sie tun (gelber Kristall)
4 Wochen vor By 尊渡假赌尊渡假赌尊渡假赌
R.E.P.O. Beste grafische Einstellungen
4 Wochen vor By 尊渡假赌尊渡假赌尊渡假赌
R.E.P.O. So reparieren Sie Audio, wenn Sie niemanden hören können
4 Wochen vor By 尊渡假赌尊渡假赌尊渡假赌
R.E.P.O. Chat -Befehle und wie man sie benutzt
4 Wochen vor By 尊渡假赌尊渡假赌尊渡假赌

Heiße Werkzeuge

Notepad++7.3.1

Notepad++7.3.1

Einfach zu bedienender und kostenloser Code-Editor

SublimeText3 chinesische Version

SublimeText3 chinesische Version

Chinesische Version, sehr einfach zu bedienen

Senden Sie Studio 13.0.1

Senden Sie Studio 13.0.1

Leistungsstarke integrierte PHP-Entwicklungsumgebung

Dreamweaver CS6

Dreamweaver CS6

Visuelle Webentwicklungstools

SublimeText3 Mac-Version

SublimeText3 Mac-Version

Codebearbeitungssoftware auf Gottesniveau (SublimeText3)

So fügen Sie Funktionen zu Schaltflächen für Vue hinzu So fügen Sie Funktionen zu Schaltflächen für Vue hinzu Apr 08, 2025 am 08:51 AM

Sie können der VUE -Taste eine Funktion hinzufügen, indem Sie die Taste in der HTML -Vorlage an eine Methode binden. Definieren Sie die Methode und schreiben Sie die Funktionslogik in der VUE -Instanz.

So verwenden Sie Bootstrap in Vue So verwenden Sie Bootstrap in Vue Apr 07, 2025 pm 11:33 PM

Die Verwendung von Bootstrap in Vue.js ist in fünf Schritte unterteilt: Startstrap installieren. Bootstrap in main.js. Verwenden Sie die Bootstrap -Komponente direkt in der Vorlage. Optional: benutzerdefinierter Stil. Optional: Verwenden Sie Plug-Ins.

So verweisen Sie auf die JS -Datei mit Vue.js So verweisen Sie auf die JS -Datei mit Vue.js Apr 07, 2025 pm 11:27 PM

Es gibt drei Möglichkeiten, sich auf JS -Dateien in Vue.js zu beziehen: Geben Sie den Pfad direkt mit dem & lt; Skript & gt an. Etikett;; Dynamischer Import mit dem montierten () Lebenszyklushaken; und importieren über die Vuex State Management Library.

So verwenden Sie Watch in Vue So verwenden Sie Watch in Vue Apr 07, 2025 pm 11:36 PM

Mit der Watch -Option in Vue.js können Entwickler auf Änderungen in bestimmten Daten anhören. Wenn sich die Daten ändert, löst sich eine Rückruffunktion aus, um Aktualisierungsansichten oder andere Aufgaben auszuführen. Zu den Konfigurationsoptionen gehören unmittelbar, die festlegen, ob ein Rückruf sofort ausgeführt werden soll, und Deep, das feststellt, ob Änderungen an Objekten oder Arrays rekursiv anhören sollen.

So kehren Sie von Vue zur vorherigen Seite zurück So kehren Sie von Vue zur vorherigen Seite zurück Apr 07, 2025 pm 11:30 PM

VUE.JS hat vier Methoden, um zur vorherigen Seite zurückzukehren: $ router.go (-1) $ router.back () verwendet & lt; Router-Link to = & quot;/& quot; Komponentenfenster.history.back () und die Methodenauswahl hängt von der Szene ab.

Was bedeutet VUE Multi-Page-Entwicklung? Was bedeutet VUE Multi-Page-Entwicklung? Apr 07, 2025 pm 11:57 PM

VUE Multi-Page-Entwicklung ist eine Möglichkeit, Anwendungen mithilfe des Vue.js-Frameworks zu erstellen, in dem die Anwendung in separate Seiten unterteilt ist: Code-Wartung: Die Aufteilung der Anwendung in mehrere Seiten kann das Verwalten und Wartungsbereich erleichtern. Modularität: Jede Seite kann als separates Modul für eine einfache Wiederverwendung und den Austausch verwendet werden. Einfaches Routing: Die Navigation zwischen Seiten kann durch einfache Routing -Konfiguration verwaltet werden. SEO -Optimierung: Jede Seite hat eine eigene URL, die SEO hilft.

Wie man zum Div von Vue springt Wie man zum Div von Vue springt Apr 08, 2025 am 09:18 AM

Es gibt zwei Möglichkeiten, Divelemente in Vue zu springen: Verwenden Sie Vue Router und fügen Sie Router-Link-Komponente hinzu. Fügen Sie den @click Event -Listener hinzu und nennen Sie dies. $ Router.push () Methode zum Springen.

So verwenden Sie die Foreach -Schleife in Vue So verwenden Sie die Foreach -Schleife in Vue Apr 08, 2025 am 06:33 AM

Die Foreach-Schleife in Vue.js verwendet die V-für-Anweisung, mit der Entwickler jedes Element in einem Array oder Objekt durchdringen und bestimmte Operationen für jedes Element ausführen können. Die Syntax ist wie folgt: & lt; Vorlage & gt; & lt; ul & gt; & lt; li v-for = & quot; item in items & gt; & gt; {{item}} & lt;/li & gt; & lt;/ul & gt; & lt;/template & gt; & am

See all articles