如何将jquery ui小部件嵌入到聚合物-dart web组件中

我尝试将一个jquery ui小部件,一个日期选择器嵌入到聚合物飞镖web组件中。

Web组件的定义如下:

  

这个小部件的初始化是在JS中完成的

  $(function() { $( "#datepicker" ).datepicker();});  

如何在我的polymer.dart webcomponent中初始化dart中的小部件。

我尝试使用’dart:js’来调用该方法,但我无法使用dart:js访问阴影dom。

 shadowRoot.querySelector("#datepicker") 

我可以访问shadow-dom,但是如何调用JS方法 – datepicker() – 就此而言

您可以将元素传递给jQuery而不是选择器。 所以下面的代码应该工作:

 final element = $['datepicker']; js.context.callMethod(r'$', [element]).callMethod('datepicker'); 

只需在元素上调用JQuery,然后调用datepicker()。 dart js包使它具有人类可读性:

 import 'package:js/js.dart'; var element = shadowRoot.querySelector("#datepicker"); var $ = context.global[r'$']; $(element).datepicker();