本文整理汇总了TypeScript中src/util.debounce函数的典型用法代码示例。如果您正苦于以下问题:TypeScript debounce函数的具体用法?TypeScript debounce怎么用?TypeScript debounce使用的例子?那么, 这里精选的函数代码示例或许可以为您提供帮助。
在下文中一共展示了debounce函数的2个代码示例,这些例子默认根据受欢迎程度排序。您可以为喜欢或者感觉有用的代码点赞,您的评价将有助于系统推荐出更棒的TypeScript代码示例。
示例1: setTimeout
const dfd = this.async(1000);
const spy = sinon.spy();
timer = util.createTimer(spy, 100);
setTimeout(dfd.callback(function () {
assert.strictEqual(spy.callCount, 1);
}), 110);
}
};
})(),
debounce: {
'debounces callback'() {
const dfd = this.async(1000);
const spy = sinon.spy();
const debouncedFunction = util.debounce(spy, 100);
debouncedFunction();
assert.strictEqual(spy.callCount, 0,
'Function should not be called until period has elapsed without further calls');
setTimeout(function () {
debouncedFunction();
}, 80);
setTimeout(function () {
debouncedFunction();
}, 160);
setTimeout(dfd.callback(function () {
assert.strictEqual(spy.callCount, 1,
示例2: setTimeout
timer = util.createTimer(spy, 100);
setTimeout(dfd.callback(function () {
assert.strictEqual(spy.callCount, 1);
}), 110);
}
};
})(),
debounce: {
'preserves context'(this: any) {
const dfd = this.async(TIMEOUT);
// FIXME
var foo = {
bar: util.debounce(dfd.callback(function(this: any) {
assert.strictEqual(this, foo, 'Function should be executed with correct context');
}), 0)
};
foo.bar();
},
'receives arguments'(this: any) {
const dfd = this.async(TIMEOUT);
const testArg1 = 5;
const testArg2 = 'a';
const debouncedFunction = util.debounce(dfd.callback(function (a: number, b: string) {
assert.strictEqual(a, testArg1, 'Function should receive correct arguments');
assert.strictEqual(b, testArg2, 'Function should receive correct arguments');
}), 0);