2015-01-08 19 views
1

我在Parse.com函数中编辑Polymer Javascript代码中的对象时遇到问题。在我将字符串“foo”添加到Parse.com函数中的数组之后,它说它包含一个项目,但它似乎永远不会真的被添加。有人知道什么是错的?使用Parse.com和Polymer

Polymer({   
    users: [], 
    created: function() { 
     this.getUsers(); 
    }, 
    getUsers: function() { 
     var query = new Parse.Query(Parse.User); 
     query.find().then(function (objects) { 
      this.users = ["foo"]; 
      alert(this.users.length); 
     }); 
    } 
}); 

回答

1

我猜this是不是你觉得是,你需要回调函数绑定到自定义元素。

handleCallback: function(objects) { 
    this.users = ["foo"]; 
}, 
getUsers: function() { 
    var query = new Parse.Query(Parse.User); 
    query.find().then(this.handleCallback.bind(this)); 
} 
0

由于分析查询是异步离开聚合物脚本的范围。“这”指的是窗口在这一点上 我有这个问题,我的一个项目。我最终只是做了该查询的元素外,且数据传递到它:

<user-polymer-element></user-polymer-element> 
<script> 
var query = new Parse.Query(Parse.User); 
     query.find().then(function (objects) { 
      document.querySelector('user-polymer-element').users = ["foo"]; 
     }); 
    } 
</script> 
0
getUsers: function() { 
    var that = this; 
    var query = new Parse.Query(Parse.User); 
    query.find().then(function (objects) { 
     that.users = ["foo"]; 
     alert(that.users.length); 
    }); 
} 
+0

这,如果你在的话把这个代码,而不是仅仅删除一个代码块没有说明更多的帮助上下文。 –