如何在 Node/Browser 模块中选择性地使用 `window` 变量?
How to optionally use `window` variable in Node/Browser module?
运行 通过 NodeJS 从库导入的脚本失败,因为库引用了 window
变量。即使在图书馆,它看起来像这样:
{
baseUrl: (typeof window !== undefined ? window.location.origin : '') + "/blah",
}
当通过 NodeJS 运行 脚本时,此行仍然导致以下错误:
ReferenceError: window is not defined
我认为添加 typeof window !== undefined
检查就足够了,但显然情况并非如此。我在这里错过了什么? (FWIW 导入的模块是 UMD 模块。)
typeof
给你一个字符串,所以你需要比较 "undefined"
,而不是 undefined
。将您的代码更改为:
{
baseUrl: (typeof window !== "undefined" ? window.location.origin : '') + "/blah",
}
运行 通过 NodeJS 从库导入的脚本失败,因为库引用了 window
变量。即使在图书馆,它看起来像这样:
{
baseUrl: (typeof window !== undefined ? window.location.origin : '') + "/blah",
}
当通过 NodeJS 运行 脚本时,此行仍然导致以下错误:
ReferenceError: window is not defined
我认为添加 typeof window !== undefined
检查就足够了,但显然情况并非如此。我在这里错过了什么? (FWIW 导入的模块是 UMD 模块。)
typeof
给你一个字符串,所以你需要比较 "undefined"
,而不是 undefined
。将您的代码更改为:
{
baseUrl: (typeof window !== "undefined" ? window.location.origin : '') + "/blah",
}