如何检查Typescript中全局窗口对象的条件属性

时间:2017-07-06 21:54:20

标签: typescript typescript2.0

我需要检查一个init_data对象的窗口全局,该对象可能存在也可能不存在。试图直接访问它打字稿抱怨:Property 'init_data' does not exist on type 'Window'

我有一个可行的解决方法,但它不再适用于Typescript 2.4。

解决方法是:

interface Window {
  init_data?: any
}

const isLoggedIn = function() {
  let win:Window = window
  return win.init_data ? true : false
}

现在抛出错误:error TS2559: Type 'Window' has no properties in common with type 'Window'.

1 个答案:

答案 0 :(得分:4)

const isLoggedIn = () => !!window['init_data'];