使用javascript的Firebase聊天更改参考
我正在尝试如何将firebase与angular结合起来,这样用户就可以通过从下拉列表中选择来更改聊天的“频道” 这是我目前掌握的代码: 注意:channel属性在代码的另一部分中定义,整个页面只加载一次使用javascript的Firebase聊天更改参考,javascript,angularjs,firebase,firebase-realtime-database,Javascript,Angularjs,Firebase,Firebase Realtime Database,我正在尝试如何将firebase与angular结合起来,这样用户就可以通过从下拉列表中选择来更改聊天的“频道” 这是我目前掌握的代码: 注意:channel属性在代码的另一部分中定义,整个页面只加载一次 app.controller('mychat', function($scope, $firebaseArray) { var d = new Date(); var today = d.getDate()+d.getMonth()+d.getYear(); var
app.controller('mychat', function($scope, $firebaseArray) {
var d = new Date();
var today = d.getDate()+d.getMonth()+d.getYear();
var txt = document.getElementById('txtFBMsgs'); //store id of textbox
//Query
var ref = firebase.database().ref().child(channel)
$scope.fbmessages = $firebaseArray(ref);
$scope.send = function() {
if (txt.value != ""){ //check if textbox contains any message
$scope.fbmessages.$add({
sender: sender,
message: $scope.messageText,
date: Date.now()
})
txt.value = ""; //reset value of textbox
}
}
})
这是我的html部分:
<div class="card mb-1 col-md-3" ng-controller="mychat" id="myDiv">
<div class="card-body" style="overflow-x: hidden; overflow-y:scroll; min-height:60vh; max-height:64vh;">
<div>
<p ng-repeat="m in fbmessages"> {{m.date | date:'short'}} - {{m.sender}}: <br> {{m.message}}</p>
</div>
</div>
<div class="form-row">
<div class="form-group col-md-9">
<input type="text" id = "txtFBMsgs" class="form-control" placeholder="Message here..." ng-model="messageText" onkeydown = "if (event.keyCode == 13) document.getElementById('sendBtn').click()">
</div>
<div class="form-group col-md-3">
<button type="submit" class="btn btn-primary btn-block" id="sendBtn" ng-click="send()">Send</button>
</div>
</div>
{{m.date | date:'short'}-{m.sender}:
{m.message}
发送
基本上,它是一个显示聊天信息的div,以及一个能够将信息发送到firebase的输入框
我可以通过javascript动态更改“通道”吗,比如在DDL中的onchange上