我在Polymer 2中使用moment-js组件。时间不会每分钟更新,我刷新页面以更新时间。如何在不刷新页面的情况下每分钟更新一次?
我使用以下代码:
<moment-js class="clock title" format="hh:mm A"></moment-js>
答案 0 :(得分:1)
正如Umit所指出的,moment-js
中的_updateFormattedDateMoment()
函数会更新显示的时间。这就是你在Polymer 2中使用它的方法:
class XFoo extends Polymer.Element {
static get is() { return 'x-foo'; }
connectedCallback() {
super.connectedCallback();
setInterval(() => this.updateDate(), 1000);
}
updateDate() {
// assumes <moment-js id="clock" ...>
this.$.clock._updateFormattedDateMoment();
}
}
customElements.define(XFoo.is, XFoo);
答案 1 :(得分:0)
您可以使用受保护的_updateFormattedDateMoment()
功能。
在您的父组件中,您可以执行以下操作:
created: function() {
this.timer = setInterval(this.updateDate, 1000);
}
updateDate: function() {
var moment = this.root.querySelector('.clock');
moment._updateFormattedDateMoment();
}