我正在关注有角度的官方文档,并且可以看到以下代码:
it("#getObservableValue should return value from observable", (done: DoneFn) => {
service.getObservableValue().subscribe(value => {
expect(value).toBe("observable value");
done();
});
});
我想知道DoneFn的来源,因为我输入时都没有错误。
答案 0 :(得分:1)
如果遵循接口定义,则会看到它位于以下位置:
node_modules/@types/jasmine/index.d.ts
/** Action method that should be called when the async work is complete */
interface DoneFn extends Function {
(): void;
/** fails the spec and indicates that it has completed. If the message is an Error, Error.message is used */
fail: (message?: Error | string) => void;
}
您不需要导入或使用它,主要是供参考。我不确定@types
的确切工作方式,但是我想如果项目中有@types
键入内容,节点知道如何找到定义,因为它们都在该文件夹中建立了索引。
更新:
我发现这是由tsconfig.json
配置的
"typeRoots": [
"node_modules/@types"
],