我目前正在调用一个名为Bootstrap Context Menu的基于jQuery的插件。
为了调用它,我需要使用Javascript Interop library。但是当我从中调用jQuery方法时,我收到以下警告:
The method 'jQuery' is not defined for the class 'Proxy'
代码段:
js.scoped(() {
js.context.jQuery('#canvas').contextmenu();
});
在一些dart / js-interop更新之前没有发生这种情况。什么是摆脱这种警告的正确方法?
答案 0 :(得分:4)
您收到此警告是因为当类定义noSuchMethod()(在http://dartbug.com/10016报告时)新分析器似乎没有意识到选项报告'没有此类成员'警告。如果您切换回旧版分析器,则不应再看到此警告。
那说如果你想使用新的分析器并摆脱这个警告,你可以使用这样的数组符号:
js.context["jQuery"]('#canvas')["contextmenu"]();
但是:
f = js.context["jQuery"]
后跟f('#canvas')
)而不是1次js.context.jQuery('#canvas')
)