每次加载控制器时从Firebase中删除root

时间:2016-12-15 21:17:57

标签: angularjs firebase firebase-realtime-database

我正在学习通过创建一个超级简单的待办事项应用程序来使用Firebase和AngularJS。每次将控制器加载到页面中(基本上每次刷新页面),我都希望完全删除Firebase上的数据(从根目录)。

这是一个超级基本的index.html代码段:

      <ul>
        <li ng-repeat="task in tasks | orderBy: reverse:true">
          <input ng-model="task.text" ng-change="tasks.$save(task)" />
          <button ng-click="tasks.$remove(task)">Completed!</button>
        </li>
      </ul>
      ...
      <form ng-submit="addTask()">
        <input ng-model="newTaskText" />
        <button type="submit">Add Task</button>
      </form>
      <br />

以下是app.js

中的Firebase代码段
  var ref = firebase.database().ref().child("tasks"); 

  $scope.tasks = $firebaseArray(ref);
  $scope.addTask = function() {
    $scope.tasks.$add({
      text: $scope.newTaskText
    });
  };

Firebase配置非常简单:

tasks
|
|----KSOMERANDOMSTRINGvakdfaajkdsf
|          |-----text: "This is task 1"
|
|----SOMEOTHERRANDOMSTRINGkasmdfkls
           |-----text: "This is task 2"

这是app.js用于删除根目录的内容:

var firebaseRootRef = firebase.database().ref(); //points to root
$scope.roottasks = $firebaseArray(firebaseRootRef);
$scope.roottasks.$remove();

目前,这打破了Angular。在页面加载/刷新时删除/清除整个根Firebase数据库的最佳方法是什么?

0 个答案:

没有答案