加载数据后,在离子控制器中调用函数

时间:2016-02-24 07:26:32

标签: javascript ionic-framework firebase

我从firebase中提取数据,根据数据,我调整显示不同的图像。我的数据需要时间来返回,我写的条件没有做任何事情,因为它在数据返回之前运行。加载数据后如何调用该函数?我尝试了ionicView Docs上的所有内容。我也试过window.onload,但这不起作用。感谢您的帮助。

var firebaseRef = new Firebase("https://app.firebaseio.com/files/0/" + $stateParams.theId);

firebaseRef.once('value', function(dataSnapshot){

var dumData = dataSnapshot.val().data;
//this is just an integer 

    if (dumData > 3){
        document.getElementById("pic").style.backgroundImage = 'url(img/pic2.png';
    }

  //Please ignore syntax errors as they do not exist in original code

1 个答案:

答案 0 :(得分:0)

您的问题与离子无关。

once返回一个承诺。因此,您应该使用success回调来处理数据。

来自Firebase once documentation

// Provide a failureCallback to be notified when this
// callback is revoked due to security violations. 
firebaseRef.once('value',
  function (dataSnapshot) { 
  // code to handle new value
}, function (err) {
  // code to handle read error
});