相关疑难解决方法(0)

将Dart函数公开给javascript

我有点像飞镖,并试图通过在其中编写一些库函数来弄湿我的脚.

虽然我从dart调用javascript函数没有问题,但我希望能够从javascript调用dart函数,但到目前为止,我没有太多喜欢.

例如,我希望能够从dart中公开一些基本功能,例如:

main() {
  String foo() {
    return "bar!";
  }

  js.scoped(() {
    js.context.foo = foo;
  });
}
Run Code Online (Sandbox Code Playgroud)

然后能够从javascript中调用它们,如下所示:

<script>
  window.onload = function() {
    alert("foo() = " + foo());
  }
</script>
Run Code Online (Sandbox Code Playgroud)

这样的事情甚至可能吗?

dart dart-js-interop

13
推荐指数
1
解决办法
3249
查看次数

使用dart创建一个javascript库

问题

我目前正在开发一个JavaScript库,为了减少错误的数量,我认为我的库可能会受益于使用Dart的静态类型机制.首先,因为我的lib没有与HTML或其他JavaScript库进行任何互操作,只有纯javascript对象操作的东西.但是我没有在网上找到任何关于如何使用dart构建JS库的信息.所以我自己尝试这样做,创建了初始的dart文件:

library Repo;

class Type {
  final String name;
  final TypeCategory category;

  Type(String name, TypeCategory category) : name = name, category = category {
    category.types[name] = this;
  }
}

class TypeCategory {
  final String name;
  final Map<String, Type> types = new Map();

  TypeCategory(this.name);
}

class Branch {

}

class Descriptor {

}

class TableDescriptor extends Descriptor {
  TableDescriptor.ctor() {

  }
}

class Repo {
  Descriptor descriptor(String name) {

  }

  Branch branch(String name) {

  }

  void Merge() {

  }
} …
Run Code Online (Sandbox Code Playgroud)

dart dart-js-interop

5
推荐指数
1
解决办法
860
查看次数

标签 统计

dart ×2

dart-js-interop ×2