在打字稿测试中模拟浏览器环境



我有一组正在编译并运行浏览器窗口的打字稿文件。

然后,我想在打字稿中编写一组测试,这些测试将在节点环境中运行,这需要嘲笑任何窗口API。

我找不到用打字稿做到这一点的干净方法,通常以

结束

找不到名称为"位置"。

我试图定义位置,但在宣布界面而不是实例时仍然没有快乐(我想在每个测试中固执(。

'位置'仅是指某种类型,但在这里被用作值。

6 if(location.origin ===

(

关于如何/应该做的任何想法?

尝试在代码中使用window.location,而不仅仅是location。Typescript包括一个具有window对象实现的Window类型的库(DOM(。

from lib.dom.d.ts文件的小摘录:

interface Window extends EventTarget, WindowTimers, WindowSessionStorage, WindowLocalStorage, WindowConsole, GlobalEventHandlers, IDBEnvironment, WindowBase64, GlobalFetch {
...
readonly location: Location;
...
}

之后,我认为您只能模拟window对象。

最新更新