2

我有以下功能:

    $('td:eq(' + iColumn + ') input', oSettings.oApi._fnGetTrNodes(oSettings))
        .each(function () {
            aData.push(this.value);
         });

在打字稿中,我收到一条消息:

Error   3   Function declared a non-void return type, but has no return expression  

为什么我会收到此消息?我可以通过说“return true”来解决该消息。我应该始终为此指定返回类型吗?

4

1 回答 1

3

打字稿存储库上文件中.each()的签名是:jquery.d.ts

each(func: (index: any, elem: Element) => JQuery);

jQuery 文档说

我们可以通过返回 false 从回调函数中停止循环。

这意味着这jquery.d.ts是错误的。

如果您从Boris Yankov 的存储库中获取更新版本,它将变为:

each(func: (index: any, elem: Element) => any);

此表格将允许您返回任何东西,或者什么都不返回。

于 2012-11-18T10:48:10.233 回答