簡體   English   中英

從FireStore獲取數據,顯示為HTML

[英]Get data from FireStore and display it as HTML

我有一個Android app ,它創建了一個截至HTML代碼的帖子 我正在嘗試在網站上獲取此代碼並將其顯示為網站,但我的 web 體驗有點平庸,我找不到解決問題的方法我嘗試了一個多星期,我認為我必須從頭開始學習編程站點才能解決問題。

來自數據庫的圖像:

在此處輸入圖像描述

以下是我嘗試過但沒有用的一些片段:

<script>
            var  config  = {
              apiKey: "AIzaSyBIlwe_P7Wq**********",
              authDomain: "fir-eivi-27********",
              databaseURL: "https://fir-eivi******",
              projectId: "s-eivi",
              storageBucket: "s-eivi.appspot.com",
              messagingSenderId: "358*****",
              appId: "1:358302572********"
            };

            firebase.initializeApp(config);
            var database = firebase.database();
              var starCountRef = database.ref('post/Tra0bUpkh90c2OSU7OQx/HTML');
                  starCountRef.on('value', function(snapshot) {
                    updateStarCount(postElement, snapshot.val());
                  });

                  // update the UI
                  function updateStarCount(el, val) {
                    el.innerHtml(`${val} post`);
                    consol.log(val);
                  }


</script>

另外,這是從腳本接收文本的正確方法嗎:

<p id='starCountRef' class="p-2 row m-0"></p>

您顯示的屏幕截圖來自 Cloud Firestore,但您的代碼使用 API 訪問實時數據庫。 雖然這兩個數據庫都是 Firebase 的一部分,但它們是完全獨立的,一個數據庫的 API 不能與另一個數據庫一起使用。

因此,您需要從 Firestore 文檔開始,特別是關於使用實時偵聽器獲取數據和更新的這一節。 相當於你的數據庫代碼是這樣的:

const db = firebase.firestore();
db.collection("post").doc("Tra0bUpkh90c2OSU7OQx")
    .onSnapshot((doc) => {
        console.log("Current data: ", doc.data());
        updateStarCount(postElement, doc.data().HTML;
    });

我發現您錯誤地編寫了“innerHTML”語法。

 function updateStarCount(el, val) { el.innerHTML = `${val} post`; consol.log(val); }

innerHTML 語法不正確。 innerHTML 不是 function 你必須給它賦值。

暫無
暫無

聲明:本站的技術帖子網頁,遵循CC BY-SA 4.0協議,如果您需要轉載,請注明本站網址或者原文地址。任何問題請咨詢:yoyou2525@163.com.

 
粵ICP備18138465號  © 2020-2024 STACKOOM.COM