ホームページ > 記事 > ウェブフロントエンド > Vue をベースにしたニュースレター アプリケーション開発: Firebase Cloud Firestore を使用したリアルタイム データ同期
Vue ベースのニュースレター アプリケーション開発: Firebase Cloud Firestore を使用してリアルタイム データ同期を実現するには、特定のコード サンプルが必要です
はじめに:
インターネットの発展に伴い、時事問題に対する人々の注目と需要もますます高まっています。今日、多くの人が、いつでもどこでも最新のニュースや注目のトピックを入手できることを望んでいます。このニーズを満たすために、Vue ベースのニュースレター アプリケーションを開発し、Firebase Cloud Firestore を使用してリアルタイムのデータ同期を実現できます。この記事では、Vue と Firebase に基づく開発プロセスを紹介し、詳細なコード例を示します。
1. 準備:
2. Firebase プロジェクトを作成します:
3. Firebase の依存関係をインストールします:
次のコマンドを実行して、Firebase 関連の依存関係をインストールします。
npm install firebase
「config.js」ファイルに、前にコピーした「firebaseConfig」オブジェクトを貼り付けてエクスポートします:
export default { // 粘贴firebaseConfig对象 }
4. Firebase を初期化します:
Firebase と「main.js」ファイル内の「firebase/config」ファイルをインポートします:
import firebase from 'firebase/app' import 'firebase/firestore' import firebaseConfig from './firebase/config'
Firebase を初期化します:
firebase.initializeApp(firebaseConfig)
Firebase Firestore インスタンスを作成します:
const db = firebase.firestore()
アプリ全体からアクセスできるように、Firestore インスタンスを Vue プロトタイプに追加します:
Vue.prototype.$db = db
5. ニュース リスト ページを作成します:
「NewsList.vue」ファイルに次のテンプレート コードを記述します。
<template> <div> <h1>时事新闻</h1> <ul> <li v-for="news in newsList" :key="news.id"> {{ news.title }} </li> </ul> </div> </template>
「NewsList.vue」ファイルに次のスクリプトを記述します。コード:
<script> export default { data() { return { newsList: [] } }, mounted() { this.getNewsList() }, methods: { getNewsList() { this.$db.collection('news') .orderBy('timestamp', 'desc') .onSnapshot(snapshot => { this.newsList = snapshot.docs.map(doc => { const data = doc.data() return { id: doc.id, title: data.title } }) }) } } } </script>
6. ニュース追加ページの作成:
「AddNews.vue」ファイルに次のテンプレート コードを記述します。
<template> <div> <h1>添加新闻</h1> <form @submit.prevent="addNews"> <label for="title">标题:</label> <input type="text" id="title" v-model="title" required> <button type="submit">提交</button> </form> </div> </template>
「AddNews.vue」ファイルに次のスクリプトを記述します。コード:
<script> export default { data() { return { title: '' } }, methods: { addNews() { this.$db.collection('news').add({ title: this.title, timestamp: new Date() }) this.title = '' } } } </script>
7. ルーティングの構成:
「src/router/index.js」ファイルに、「NewsList.vue」をインポートします。 " および "AddNews.vue":
import NewsList from '@/views/NewsList.vue' import AddNews from '@/views/AddNews.vue'
「routes」配列に、2 つのルーティング オブジェクトを作成します:
{ path: '/', name: 'NewsList', component: NewsList }, { path: '/add', name: 'AddNews', component: AddNews }
8.ホームページコンポーネント :
「Home.vue」ファイルに、次のテンプレート コードを記述します:
<template> <div> <h1>时事通讯应用</h1> <router-link to="/">查看新闻</router-link> <router-link to="/add">添加新闻</router-link> <router-view></router-view> </div> </template>
9. アプリ コンポーネントを更新します:
「src/App.vue」ファイルで、最初のテンプレート コードを次のコードに置き換えます:
<template> <div id="app"> <router-view></router-view> </div> </template>
10. アプリケーションを実行します:
ターミナルで次のコマンドを実行してアプリケーションを開始します。
npm run serve
結論:
この記事のサンプル コードを通じて、Vue ベースのニュースレター アプリケーションを作成し、Firebase Cloud Firestore を使用してリアルタイム データ同期を実現することができました。ユーザー認証やコメント機能の追加など、開発者は自らのニーズやアイデアに応じてアプリケーションを改良し続けることができます。この記事が Vue と Firebase の実際の応用に役立ち、アプリケーションがユーザーのニーズをより適切に満たせるようになれば幸いです。
以上がVue をベースにしたニュースレター アプリケーション開発: Firebase Cloud Firestore を使用したリアルタイム データ同期の詳細内容です。詳細については、PHP 中国語 Web サイトの他の関連記事を参照してください。