检查GWT Elemental2叠加层中方法或属性的可用性
Posted
tags:
篇首语:本文由小常识网(cha138.com)小编为大家整理,主要介绍了检查GWT Elemental2叠加层中方法或属性的可用性相关的知识,希望对你有一定的参考价值。
尽管可以在Elemental2覆盖中提供属性或方法,但是如何测试它是否实际在底层JS对象中定义?
DomGlobal
类有一个hasOwnProperty()
方法似乎做我想要的:
// WORKS
if (DomGlobal.hasOwnProperty("console")) {
DomGlobal.console.log(object);
}
但是如何检查console
对象本身的方法是否存在?我希望能够做到这样的事情:
// DOESN'T WORK
if (DomGlobal.console.hasOwnProperty("warn")) {
DomGlobal.console.warn(object);
}
它不起作用,因为hasOwnProperty()
没有在console
叠加中定义。
我应该做什么呢?我是否需要定义自己的叠加层或强制转换为包含该方法的叠加层?
这是正确的吗?
Js.<JsObject>cast(DomGlobal.console).hasOwnProperty("warn")
看起来有点满口。是否有标准实用程序更简洁地执行此操作,还是我必须自己编写?
答案
我在Elemental2的老closed issue中发现了这个答案:
Js.asPropertyMap(object).has("key");
以上是关于检查GWT Elemental2叠加层中方法或属性的可用性的主要内容,如果未能解决你的问题,请参考以下文章