这似乎没有正常运作:
Module build failed: Error: F:/Tutorial/angular2/ngTutorial/src/app/common/store/todo.store.ts (7,5): Public property 'store
' of exported class has or is using name 'Store' from external module "F:/Tutorial/angular2/ngTutorial/node_modules/redux/in
dex" but cannot be named.)
如果时间以秒为单位,计时器工作正常,但我需要它在几个小时内。具体而言,第一张图像为1小时,其余为24小时。可能是秒数太长了吗?它必须以毫秒为单位吗?
答案 0 :(得分:1)
setTimeout
使用32位int来存储延迟,因此可能的最大值为2147483647.。
因此,您最多可以获得596.52小时,足以满足您的需求。
但是,它必须以毫秒为单位,因为这是setTimeout()
接受的唯一单位。
除非在将值发送到函数之前添加转换逻辑。
答案 1 :(得分:0)
该函数需要几毫秒,但您可以在函数中使用该转换逻辑:
function changeImage() {
document.getElementById('candle').src = images[x].src;
if (x<images.length) {
x+=1;
}else{
x=0;
}
var milisecondTimeout = 1000 * 3600 * images[x].timeout;
timeout = window.setTimeout(function() {changeImage()}, milisecondTimeout);
}
然后你可以用几个小时而不是毫秒来推动你的图像:
images.push({src: "http://www.mountsinaiparks.org/digital-yahrzeit/wp-content/themes/yahrzeit-theme/Candle_images/Candle01.gif", timeout: 1});
希望这有帮助