繁体   English   中英

检查GWT Elemental2叠加层中方法或属性的可用性

[英]Checking availability of a method or property in GWT Elemental2 overlays

尽管可以在Elemental2叠加层中提供属性或方法,但如何测试它是否在基础JS对象中实际定义了?

DomGlobal类具有hasOwnProperty()方法,该方法似乎DomGlobal我的要求:

// WORKS
if (DomGlobal.hasOwnProperty("console")) {
    DomGlobal.console.log(object);
}

但是,如何检查console对象本身上是否存在方法? 我希望能够执行以下操作:

// DOESN'T WORK
if (DomGlobal.console.hasOwnProperty("warn")) {
    DomGlobal.console.warn(object);
}

它不起作用,因为在console叠加层中未定义hasOwnProperty()

我该怎么办呢? 我需要定义自己的叠加层还是将其强制转换为包含该方法的叠加层?

这是正确的吗?

Js.<JsObject>cast(DomGlobal.console).hasOwnProperty("warn")

似乎有点满口。 是否有标准的实用程序可以更简洁地执行此操作,或者我必须自己编写?

我在Elemental2的一个旧的封闭问题中发现了这个答案:

Js.asPropertyMap(object).has("key");

暂无
暂无

声明:本站的技术帖子网页,遵循CC BY-SA 4.0协议,如果您需要转载,请注明本站网址或者原文地址。任何问题请咨询:yoyou2525@163.com.

 
粤ICP备18138465号  © 2020-2024 STACKOOM.COM