使用Parse.com和Polymer

时间:2015-01-08 21:51:45

标签: javascript parse-platform polymer

我在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);
        });
    }
});

3 个答案:

答案 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);
    });
}