基于 Localstorage 更改 Firebase Array Ref
Change Firebase Array Ref based on Localstorage
我遇到了以下问题:
我有一个 select 元素是用户选择的选项。
此选项保存到本地存储。
现在我想使用这个存储值作为 firebasearray 的路径。
基本上它似乎可以工作,但我无法在不点击重新加载的情况下更新 firebasearray 引用。
我的 firebasearray 工厂:
.factory("MyFireFactory", ["$firebaseArray", "$localStorage",
function($firebaseArray, $localStorage) {
var ref = firebase.database().ref('demodata/' + $localStorage.selectedoption);
return $firebaseArray(ref);
}
])
阅读 angular 文档后 angular docs 如果发现
“...Angular 中的所有服务都是单例...”这基本上意味着如果我理解正确的话,它们只 运行 一次。
就我而言,这意味着我必须将我的工厂代码移至控制器,以便可以使用来自本地存储的数据。
我现在工作的控制器:
var ref = firebase.database().ref('demodata/' + $localStorage.selectedoption);
$scope.demoscop = $firebaseArray(ref);
我遇到了以下问题:
我有一个 select 元素是用户选择的选项。 此选项保存到本地存储。 现在我想使用这个存储值作为 firebasearray 的路径。
基本上它似乎可以工作,但我无法在不点击重新加载的情况下更新 firebasearray 引用。
我的 firebasearray 工厂:
.factory("MyFireFactory", ["$firebaseArray", "$localStorage",
function($firebaseArray, $localStorage) {
var ref = firebase.database().ref('demodata/' + $localStorage.selectedoption);
return $firebaseArray(ref);
}
])
阅读 angular 文档后 angular docs 如果发现 “...Angular 中的所有服务都是单例...”这基本上意味着如果我理解正确的话,它们只 运行 一次。 就我而言,这意味着我必须将我的工厂代码移至控制器,以便可以使用来自本地存储的数据。
我现在工作的控制器:
var ref = firebase.database().ref('demodata/' + $localStorage.selectedoption);
$scope.demoscop = $firebaseArray(ref);