我在Parse.com函数中编辑Polymer Javascript代码中的对象时遇到问题。在我添加String" foo"之后在Parse.com函数中的数组中,它表示它包含一个项目,但它似乎从未真正添加过。有人知道出了什么问题吗?
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);
});
}
});
答案 0 :(得分:1)
我猜测this
并不是您的想法,您需要将回调函数绑定到自定义元素。
handleCallback: function(objects) {
this.users = ["foo"];
},
getUsers: function () {
var query = new Parse.Query(Parse.User);
query.find().then(this.handleCallback.bind(this));
}
答案 1 :(得分: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>
答案 2 :(得分: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);
});
}