将值传递给underscore.js延迟中的函数

时间:2015-02-12 17:15:48

标签: underscore.js

我正在尝试使用underscore.js库。

function replaceText(tab){
  removeText();
  _.delay(appendText(value), 1000)
}

但它不起作用。它适用于简单的setTimeout。

你能帮忙吗?谢谢!

2 个答案:

答案 0 :(得分:2)

尝试

_.delay(appendText, 1000, value)

http://underscorejs.org/#delay; _.delay(function, wait, *arguments)

"如果你传递了可选参数,它们将在被调用时被转发到该函数。"

答案 1 :(得分:0)

你可以通过几种不同的方式做到这一点。

使用部分申请:

function replaceText(tab){
  removeText();
  _.delay(_.partial(appendText, value), 1000);
}

绑定功能:

function replaceText(tab){
  removeText();
  _.delay(appendText.bind(null, value), 1000);
}

或使用匿名函数:

function replaceText(tab){
  removeText();
  _.delay(function(){
    appendText(value);
  }, 1000);
}