const sinon = require('sinon')
const a =() => { return 1 }
sinon.stub(a)
拋出TypeError: Attempted to wrap undefined property undefined as function
。
stub
如果有一個對象的作品,所以我嘗試使用this
。在Node.js的REPL(v6.11):
> const a =() => { return 1 }
undefined
> this.a
[Function: a]
然而,在我的摩卡規範,它失敗:
const a =() => { return 1 }
console.log(a)
// => [Function: a]
console.log(this.a)
// => undefined
我缺少什麼?我該如何做這項工作?
順便說一句:我知道我可以stub
一個對象的方法,像這樣:const stub = sinon.stub(object, 'a')
,但這不是我在這裏跟這個問題。
的可能的複製[類型錯誤:試圖換未定義的屬性作爲函數(https://stackoverflow.com/ question/42271151/typeerror-attempt-to-wrap-undefined-property-as-function) –
不是重複的。這不是關於制定者/獲得者。 –
你不能像這樣工作。對於存根,Sinon _requires_需要一個「根對象」,因爲它需要替換要存根該對象的函數引用。 REPL中的'this'僅適用於REPL的實現方式。 – robertklep