jquery - 在 Dart 中使用 Jquery UI

标签 jquery dart dart-polymer

我正在尝试在 Dart 中创建一个简单的对话框,我认为使用现有的 javascript 库更容易。 Here你可以找到基本的例子,基本上

$( "#dialog" ).dialog();

在互联网和 stackoverflow 上你可以找到 1000 个例子,但没有一个对我有用。 我认为这是正确的方法:

import 'dart:js' as js;
//[...]
var jquery = new js.JsObject(js.context['jQuery']);
var myob = jquery('#dialog').dialog();

我得到的只是这个错误:

Breaking on exception: Class 'JsObject' has no instance method 'call'.

我是否误读了 Dart 的文档?

最佳答案

基本上,有 2 个库可以与 js 互操作:dart:jspackage:jsdart:js 是在 package:js 之后创建的,大多数 stackoverflow 答案都使用 package:js 并且仍然有效(它不是值得对这些答案投反对票...)

package:js 提供了一个更简单的 Api,但代价是增加了 js 大小(因为 package:js 使用 dart:mirrors em> 和 noSuchMethod)。

使用package:js:

import 'package:js/js.dart' as js;

main() {
  js.context.$("#dialog").dialog();
}
<小时/>

使用 dart:js :

import 'dart:js' as js;

main() {
  js.context.callMethod(r'$', ['#dialog']).callMethod('dialog');
}

关于jquery - 在 Dart 中使用 Jquery UI,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/21242822/

相关文章:

flutter - 如何在 flutter 应用程序中删除慢模式标签

dart - 如何隐藏自定义 Polymer 元素?

javascript - 从 jquery 数组值中选择 div

javascript - 如何将 html 表格转换为 csv 字符串

android-studio - 在 Android Studio 中为 Dart 启用 Rainbow Brackets

json - 类型 'Future<List<Question>>' 的值不能分配给类型 'List<Question>' 的变量

dart - Angular Dart 和 Polymer Dart 的区别

dart - 动态添加 dart 聚合物元素时,如何在 DOM 上获取可观察变量

php - Colorbox 不在 AJAX 调用中执行 PHP 代码

jquery - 显示/隐藏表内上一个 <tr> 下方的重叠内容 <tr>