我试图在dojo规范中设置值变化的持续时间,但我想我错过了一些东西,我无法弄清楚它是什么。
到目前为止,我已经有了这段代码,但指标只是从一个点移动到另一个点,没有任何动画。
require(["dojo/ready", "dojo/dom", "dojox/dgauges/components/black/CircularLinearGauge", "dojox/dgauges/GaugeBase"],
function(ready, dom, CircularLinearGauge, GaugeBase) {
var gauge = new CircularLinearGauge({value:10, animationDuration:5000}, dom.byId("circularGauge"));
setInterval(function() {
var randomValue = Math.floor((Math.random() * 100) + 1);
gauge.set("value", randomValue);
gauge.refreshRendering();
}, 10000);
});
任何帮助都将受到高度赞赏,提前感谢
答案 0 :(得分:1)
看起来像是dojox.dgauges.components.DefaultPropertiesMixin
的问题。如果将_setValueAttr函数替换为
_setValueAttr: function(v) {
this.getElement("scale").getIndicator("indicator").set("value", v);
}
它应该为你制作动画。
作为旁注,DefaultPropertiesMixin
中的所有其他函数都直接设置每个属性,而不是使用set函数。建议更改它们以使用set函数。