自定义Polymer Element在可见时刷新数据?

时间:2015-08-20 21:47:33

标签: polymer web-component

在元素脚本中我有:

Polymer({
    is: 'projects-page',
    attached: function () {
        this.async(function () {
            // access sibling or parent elements here
            var model = this;
            $.ajax({
                url: "/api/projects",
                headers: { "Authorization": "Bearer " + sessionStorage.getItem("accessToken") }
            })
            .done(function (data) {
                console.log(data);
                model.projects = data;
                model.notifyPath('projects', model.projects);
            })
            .fail(function (jqXHR, textStatus) {

            })
            .always(function () {

            });



        });
    }


});

我需要在路线更改或用户可见时刷新此数据。 我仍然发现缺乏Polymer docs,我们将不胜感激。

更新: 这是部分答案。 How can I refresh/reload Polymer element, when page changes?

1 个答案:

答案 0 :(得分:1)

您可以使用更改事件侦听器侦听窗口URL或任何其他反映应用程序状态的变量,然后重新加载ajax。 model应该变成项目页面的正确性,而ajax-done事件监听器应该使用Polymer-set函数。因此,视图在没有任何大的阴影的情况下重新填充。

https://www.polymer-project.org/1.0/docs/devguide/data-binding.html#set-path https://www.polymer-project.org/1.0/docs/devguide/properties.html#change-callbacks