UNPKG

@antv/f6-plugin

Version:
39 lines (35 loc) 788 B
export function createPlayer(fn, time) { if (time === void 0) { time = 20; } var isStop = true; var timer = null; var maxTime = 800; var minTime = 300; var maxLevel = 10; var minLevel = 1; var loop = function loop() { if (isStop) { clearTimeout(timer); return; } fn === null || fn === void 0 ? void 0 : fn(); timer = setTimeout(function () { loop(); }, time); }; return { play: function play() { isStop = false; loop(); }, stop: function stop() { isStop = true; }, setSpeed: function setSpeed(speed) { if (speed > maxLevel) speed = maxLevel; if (speed < minLevel) speed = minLevel; time = maxTime - (maxTime - minTime) * speed / (maxLevel - minLevel); } }; }