2015-09-03 2 views
0

Ive получил SPA, используя угловые и 2 базы данных в firebase. Итак, у вас есть контроль (с двумя вариантами), где я бы хотел выбрать базу данных для получения данных. Например, первый вариант означает первую базу данных, второй вариант - второй. Вопрос: «Как обновить представление в угловом, когда база данных изменилась».Как обновить представление в угловом, когда база данных изменилась?

<select class="form-control" ng-model="level" ng-options="lvl in lvls"></select> 
<div>{{data}}</div> 

в контроллере

var levelString = "https://amber-inferno-9289.firebaseio.com/" + $scope.level + "/"; 

$scope.dictionary = new Firebase(levelString); 
$scope.dictionary.on('value', function(snapshot){ 
    $scope.data = snapshot.val(); 
}, function (errorObject) { 
    console.log("The read failed: " + errorObject.code); 
}); 
+0

Не могли бы вы изменить его? ** Таким образом, существует элемент управления select, в котором id, например, выбрал базу данных для получения данных. ** –

+1

См. Здесь код https://www.firebase.com/docs/web/libraries/angular/guide/beyond-angularfire.html# Обзор раздела Обновление Firebase происходит за пределами возможностей Angular. –

ответ

0

Я думаю, что вы хотите сделать, это использовать ng-change директиву на вашем select и реорганизовать ваш словарь настроить логику в функцию, которая вызывается на изменение выбора.

<select class="form-control" ng-model="level" ng-options="lvl for lvl in lvls" ng-change="setUpDictionary(level)"></select> 

Затем в контроллере, создать функцию setUpDictionary установить $scope.dictionary на новый Firebase указывающей на другой URL и т.д.

Я думаю, что это то, что вы ищете основанный на том, что я мог бы сделать от вашего вопроса.

Надеюсь, это поможет вам!

Смежные вопросы