Sinon: stub(obj, 'meth', fn) 已被删除,请参阅文档

创建于 2018-04-02  ·  7评论  ·  资料来源: sinonjs/sinon

当我使用以下代码时,出现错误:

let obj = {
    foo: function() {
    }
}
var stub = sinon.stub(obj , "foo", () => {});

stub(obj, 'meth', fn) has been removed, see documentation

然后我检查文档:

http://sinonjs.org/releases/v2.0.0/stubs/#var -stub--sinonstubobject-method-func

var stub = sinon.stub(object, "method", func);

用包裹在间谍中的 func 替换 object.method。

像往常一样,object.method.restore(); 可以用恢复原来的方法。

我正在使用 sinon 4.3。

最有用的评论

对于那些通过谷歌搜索错误消息发现这一点的人,更新的文档在这里: http :

看起来新形式是stub(obj, 'meth').callsFake(fn)

~ var stub = sinon.stub(object, "method", func); ~
这已从 v3.0.0 中删除。 相反,你应该使用
stub(obj, 'meth').callsFake(fn)
可以使用codemod来升级您的代码

所有7条评论

忘了是,出于某种原因,谷歌搜索“sinon stub”指向2.0.0 文档。

对于那些通过谷歌搜索错误消息发现这一点的人,更新的文档在这里: http :

看起来新形式是stub(obj, 'meth').callsFake(fn)

~ var stub = sinon.stub(object, "method", func); ~
这已从 v3.0.0 中删除。 相反,你应该使用
stub(obj, 'meth').callsFake(fn)
可以使用codemod来升级您的代码

@mroderick :不幸的是,由于我们的 (?) SEO 策略,人们最终会制造问题,所以也许是时候看看我曾经提出的修复过时 Google 搜索的建议了。 我可以从详细说明问题和潜在修复开始(根据我们对 .. 2016 年的 Twitter 讨论?)。

AFAI 记得建议的修复是做类似 Django 的事情,它通过规范链接操作放弃一些语义正确性,通过始终让 Google 点击指向 /latest 来改进 SEO。 细节逃过了我的 ATM,但它在概念上很简单。 它只是使用 Jekyll 来做这件事,这是障碍,AFAI 可以回忆起:-)

是否可以在旧版本的顶部放置一个横幅,说明这些文档已过时? 这不会改善搜索结果,但至少对访问者来说更明显。

@mantoni是的,这正是我在 Twitter 上与 Morgan 交流时出现的一件事:


顺便说一句,由于一些 SEO 问题,我对此有第二个疑问。 我认为我们需要另一种方法,参考这个问题: https : https ://webmasters.stackexchange.com/questions/99867/how-to-correctly-mark-up-different-versions-of-the-same-document-which-are-non-c ...

基本上,我认为更好的谷歌点击量的一个重大改进是做 Django 在他们的文档中所做的事情

我认为使用横幅和canonical (或noindex )将是一个好的开始。

最后,我希望有一个更好的文档网站。

  • 更容易管理,更容易做出贡献(所有版本都变得笨拙)
  • 更多示例,基本上每个方法/属性都应该至少有一个好的用法示例
  • 操场

至于今天,我仍然把它作为stub(obj, 'meth', fn) has been removed, see documentation的顶级谷歌搜索结果

此页面是否有帮助?
0 / 5 - 0 等级