jQuery 和 Dart 与 call() 互操作
jQuery and Dart interop with call()
我正在尝试实现与 Dart 的基本 jQuery 互操作,以便轻松使用 jQuery 插件。
我正在尝试找出一种方法来实现 classical $("#elementID")
DOM 查询选择和 $.fn.pluginX.methodY()
[=20= 的插件 getter ]
到目前为止我已经开发了这个
@JS()
external JQuery jQuery(String query);
@JS("jQuery")
abstract class JQuery extends intlTelInput.JQuery {
factory JQuery() {}
external static Plugins get fn;
}
所以我可以用 Dart jQuery("#elementID")
实现 JS $("#elementID")
和 JS $.fn.pluginX.methodY()
与 Dart JQuery.fn.pluginX.methodY()
但我想在 class 中实现 JQuery("#elemID")
,最终代码类似于:
@JS("jQuery")
abstract class JQuery extends intlTelInput.JQuery {
factory JQuery() {}
external static JQuery call(String query); // <- this replacing jQuery(..)
external static Plugins get fn;
}
将名为 call 的静态方法添加到 Dart class 不会使 JQuery 可调用。
好消息是你可以获得与你应该 jQuery 一个 getter 和 returns 一个可调用的 JS 互操作对象相同的效果。
试试这个:
@JS("jQuery")
external JQuery get jQuery;
@JS() @anonymous
abstract class JQuery extends intlTelInput.JQuery {
external JQuery call(String query);
external Plugins get fn;
}
我正在尝试实现与 Dart 的基本 jQuery 互操作,以便轻松使用 jQuery 插件。
我正在尝试找出一种方法来实现 classical $("#elementID")
DOM 查询选择和 $.fn.pluginX.methodY()
[=20= 的插件 getter ]
到目前为止我已经开发了这个
@JS()
external JQuery jQuery(String query);
@JS("jQuery")
abstract class JQuery extends intlTelInput.JQuery {
factory JQuery() {}
external static Plugins get fn;
}
所以我可以用 Dart jQuery("#elementID")
实现 JS $("#elementID")
和 JS $.fn.pluginX.methodY()
与 Dart JQuery.fn.pluginX.methodY()
但我想在 class 中实现 JQuery("#elemID")
,最终代码类似于:
@JS("jQuery")
abstract class JQuery extends intlTelInput.JQuery {
factory JQuery() {}
external static JQuery call(String query); // <- this replacing jQuery(..)
external static Plugins get fn;
}
将名为 call 的静态方法添加到 Dart class 不会使 JQuery 可调用。 好消息是你可以获得与你应该 jQuery 一个 getter 和 returns 一个可调用的 JS 互操作对象相同的效果。
试试这个:
@JS("jQuery")
external JQuery get jQuery;
@JS() @anonymous
abstract class JQuery extends intlTelInput.JQuery {
external JQuery call(String query);
external Plugins get fn;
}