使用setTimeout和go()定期刷新core-ajax;

时间:2014-09-24 00:09:08

标签: ajax settimeout polymer

我有一个工作正常的core-ajax组件(我看到了所有预期的数据):

  <template is="auto-binding">
      <core-ajax id="ds" auto url="https://server/data.json" response="{{data}}"></core-ajax>
    <my-alarms alarms="{{data}}"></mu-alarms>
  </template>

我正在尝试使用以下javascript定期刷新概念演示:

function f() {
    $('#ds').go();
}
setTimeout(f, 1000)

这导致go()

行上出现以下错误
  

未捕获的TypeError:undefined不是函数

Here is the documentation.我做错了什么?

2 个答案:

答案 0 :(得分:2)

该函数看起来像jquery。试试这个。

function f() {
  document.querySelector("#ds").go();
}
setTimeout(f, 1000);

不确定使用聚合物的jquery。我认为它不能像使用document.querySelector那样在shadowdom中找到元素。

答案 1 :(得分:1)

$是一个Map,而不是Polymer中的一个函数。它仅在Polymer元素中可用,您可以像

一样使用它
function f() {
    $.ds.go();
}
setTimeout(f, 1000)

访问元素shadowDOM中的元素。