Vue Firebase Cloud Firestore: リアルタイム ニュースレター アプリケーション開発の実践

PHPz
リリース: 2023-09-13 09:24:21
オリジナル
1355 人が閲覧しました

Vue Firebase Cloud Firestore: 实时时事通讯应用开发实践

Vue Firebase Cloud Firestore: リアルタイム ニュースレター アプリケーションの開発実践

近年、モバイル インターネットの急速な発展に伴い、人々のリアルタイム コミュニケーションへの要求が高まっています。アプリケーションが増加しています。リアルタイムのニュースレター アプリケーションを使用すると、ユーザーは最新の情報を入手しながら他のユーザーと対話したり通信したりできます。この記事では、Vue.js と Firebase Cloud Firestore を使用してリアルタイム ニュースレター アプリケーションを開発する方法を紹介し、具体的なコード例を示します。

  1. 技術概要
    Vue.js は、MVVM パターンを使用してユーザー インターフェイスを構築する人気のある JavaScript フレームワークです。使いやすく、効率的かつ柔軟で、単一ページ アプリケーションの迅速な開発に適しています。 Firebase Cloud Firestore は、Google が提供するリアルタイム データベース サービスで、クライアントとサーバーの間でリアルタイムのデータ同期を実現するために使用できます。
  2. プロジェクトの準備
    まず、Vue.js プロジェクトを作成する必要があります。 Vue CLI ツールを使用すると、Vue.js に基づいたプロジェクト スケルトンをすばやく作成できます。次のコマンドを実行して、新しい Vue.js プロジェクトを作成します:
# 安装Vue CLI
npm install -g @vue/cli
# 创建新项目
vue create realtime-news-app
ログイン後にコピー

インストールが完了したら、cd コマンドを使用してプロジェクト ディレクトリに入り、npm を実行します。 runserveプロジェクトを開始するコマンド:

cd realtime-news-app
npm run serve
ログイン後にコピー
  1. Firebase Cloud Firestore を構成する
    Firebase 公式ウェブサイトで新しい Firebase プロジェクトを作成します。コンソールに入り、「プロジェクトの追加」ボタンをクリックし、プロジェクト名とリージョンを入力します。作成後、コンソールの左メニューから「データベース」を選択し、「データベースの作成」をクリックします。

[開始モード] を [テスト モード] として選択し、プロジェクトに属する場所を選択し、次に [有効にする] を選択します。その後、Cloud Firestore データベースが正常に作成されたことがわかります。

[設定]ボタンをクリックし、[プロジェクト設定]を選択します。ポップアップ ダイアログ ボックスで、[アプリの追加] ボタンを見つけてクリックします。 「Web アプリの追加」を選択し、名前を付けます。完了すると、提供された API キーやプロジェクト ID を含む一連の構成情報が提供されます。

プロジェクトのルート ディレクトリに戻り、コマンド ラインで次のコマンドを実行して Firebase ライブラリをインストールします。

npm install firebase
ログイン後にコピー

新しい Firebase 構成ファイルを作成します (例: src/) firebaseConfig.js) を開き、Firebase プロジェクトの構成情報を次のファイルにコピーします:

// src/firebaseConfig.js

export default {
  apiKey: "your_api_key",
  authDomain: "your_auth_domain",
  projectId: "your_project_id",
  storageBucket: "your_storage_bucket",
  messagingSenderId: "your_messaging_sender_id",
  appId: "your_app_id",
};
ログイン後にコピー

メインの Vue コンポーネント ファイル (src/App.vue など)この設定ファイルをインポートし、Firebase を初期化します。

// src/App.vue

import firebase from "firebase";
import firebaseConfig from "./firebaseConfig";

firebase.initializeApp(firebaseConfig);
ログイン後にコピー
  1. リアルタイム ニュースレター アプリケーションの実践
    リアルタイム ニュースレター アプリケーションには、ニュースを公開する機能があると仮定します。ユーザーはニュースのタイトルと内容を入力し、Firebase データベースに保存できます。他のユーザーはこれらのニュースを購読し、ニュースが公開されたときにリアルタイムで通知を受け取ることができます。

Firebase で news というコレクションを作成し、ニュースごとにドキュメントを作成します。ドキュメントに含まれるフィールドは次のとおりです。

  • title: ニュースのタイトル
  • content: ニュースの内容
  • timestamp: Publish timestamp

Vue コンポーネントでは、Firestore が提供する API を使用してデータの読み取りと書き込みを行うことができます。以下はニュースを公開するメソッドの例です。

// src/App.vue

async publishNews() {
  const newsRef = firebase.firestore().collection("news");
  const timestamp = firebase.firestore.FieldValue.serverTimestamp();  // 获取当前时间戳

  try {
    await newsRef.add({
      title: this.title,
      content: this.content,
      timestamp
    });

    this.title = "";
    this.content = "";

    console.log("发布成功!");
  } catch (error) {
    console.error("发布失败!", error);
  }
}
ログイン後にコピー

ニュースを購読するには、onSnapshot メソッドを使用してコレクション内の変更をリッスンし、適切なタイミングでビューを更新します。以下は、ニュースを購読するためのメソッドの例です。

// src/App.vue

subscribeToNews() {
  const newsRef = firebase.firestore().collection("news");

  newsRef.onSnapshot((snapshot) => {
    const news = snapshot.docs.map((doc) => doc.data());
    this.news = news;
  });
}
ログイン後にコピー

Vue コンポーネントの created ライフサイクル フック関数で、subscribeToNews メソッドを呼び出して開始できます。ニュースの購読:

// src/App.vue

created() {
  this.subscribeToNews();
}
ログイン後にコピー

上記の実践を通じて、Vue.js と Firebase Cloud Firestore を使用したリアルタイム ニュースレター アプリケーションの開発に成功しました。ユーザーはニュースを公開し、他のユーザーはニュースを購読して最新のコンテンツをリアルタイムで受信できます。この記事がリアルタイム通信アプリケーションの理解と実践に役立つことを願っています。

概要
この記事では、Vue.js と Firebase Cloud Firestore を使用してリアルタイム ニュースレター アプリケーションを開発する手順について説明し、具体的なコード例を示します。これら 2 つの強力なツールを組み合わせることで、効率的なリアルタイム通信アプリケーションを迅速に構築できます。これらの例が開発作業に役立ち、機能豊富なリアルタイム メッセージング アプリケーションの構築に役立つことを願っています。

以上がVue Firebase Cloud Firestore: リアルタイム ニュースレター アプリケーション開発の実践の詳細内容です。詳細については、PHP 中国語 Web サイトの他の関連記事を参照してください。

関連ラベル:
ソース:php.cn
このウェブサイトの声明
この記事の内容はネチズンが自主的に寄稿したものであり、著作権は原著者に帰属します。このサイトは、それに相当する法的責任を負いません。盗作または侵害の疑いのあるコンテンツを見つけた場合は、admin@php.cn までご連絡ください。
最新の問題
人気のチュートリアル
詳細>
最新のダウンロード
詳細>
ウェブエフェクト
公式サイト
サイト素材
フロントエンドテンプレート
私たちについて 免責事項 Sitemap
PHP中国語ウェブサイト:福祉オンライン PHP トレーニング,PHP 学習者の迅速な成長を支援します!