良い一日SO、
基本的なFirebaseチャットモジュールをAngularjsを介してシステムに組み込んでいます(正直なところ、まったく熟練していません。)
FirebaseメッセージがFirebaseデータベースから取得されているのに、アイテムがHTML要素に表示されないという問題に直面しています。
これが私のHTMLコードです:
<html lang="en" ng-app="chatApp">
...
<section id="content3" class="tab-content">
<div class="card mb-3">
<div class="card-header">
<i class="fa fa-comments-o"></i>
Instant Chat Messenger – Crisis Management Office
</div>
<div class="card-body" ng-controller="ChatController">
<p ng-repeat="m in messages">{{m.message}}- </p>
<div class="form-row">
<div class="form-group col-md-11">
<input type="text" class="form-control" id="chatEntry" rows="14" placeholder="Type your message here" ng-model="messageText">
</div>
<div class="form-group col-md-1">
<button type="submit" class="btn btn-primary btn-block" id="sendBtn" ng-click="send()">Send</button>
</div>
</div>
</div>
</div>
</section>
そして、これがangular.jsコードです:
var app = angular.module('chatApp', ['firebase']);
app.controller('ChatController', function($scope, $firebaseArray) {
var crisis = "Crisis1";
//Query
var ref = firebase.database().ref().child(crisis).child('CMO-PMO');
$scope.messages = $firebaseArray(ref);
$scope.send = function() {
$scope.messages.$add({
sender: "PMO",
message: $scope.messageText,
date: Date.now()
})
}
})
そして今、ここに面白いことがあります..私のメッセージが取得されています({{m.messages}}の後ろにダッシュ '-'を置いて、Firebaseデータベース内の各メッセージにダッシュが出力されるようにします(取得されています)が、メッセージが表示されていません。
これが私のfirebaseのスクリーンショットです(注:現在7つのメッセージがあります):
これが私のHTMLページのスクリーンショットです(Firebaseの7つのアイテムに7つのダッシュが表示されます):
javascriptコードでスコープと、Firebaseデータベースの名前を確認しましたが、メッセージを表示できません。ただし、ページを介してFirebaseデータベースにメッセージを送信できます。(ボタンと送信機能が機能しています!)現在の唯一の問題はメッセージの表示です。
私は途方に暮れています..私を助けてくださいSO!ここに投稿があればすぐに返信します:)ありがとうございます!
編集:{{m | json}}を使用する場合:
{%verbatim%}
タグを使用してレンダリングの問題を解決しました。
この記事はインターネットから収集されたものであり、転載の際にはソースを示してください。
侵害の場合は、連絡してください[email protected]
コメントを追加