2

Dart クラス (foo.dart) があります。

class Foo {
  void talk() {
    print('Hello');
  }
}

foo.dart を JavaScript にコンパイルした後、次のように Foo を使用できるようにしたいと思います。

var foo = new Foo(); // from foo.dart.js
foo.talk() // prints "Hello"

私の質問:

  • これは現在可能ですか?
  • もしそうなら、どのように?
  • そうでない場合、それを可能にするためにどのような計画が立てられていますか?

dart:js ライブラリのドキュメントには次のように記載されています。

このライブラリは、Dart オブジェクトを JavaScript から使用できるようにはまだしていません。それらのメソッドとプロパティ [原文のまま] にはアクセスできませんが、Dart 関数を JavaScript に渡したり、JavaScript から呼び出したりすることはできます。

「まだ」という言葉は希望を与えてくれますが、このトピックについては他の場所ではほとんど見つけられませんでした。

編集:

Dart2js を使用して JavaScript から Dart 関数を呼び出すことが可能であることは認識しています。ただし、私がやろうとしていることは多少異なります。JavaScript から Dart クラスのすべての機能にアクセスできるようにしたいと考えています。

4

1 に答える 1

2

ツリーの揺れと縮小により、これは通常不可能です。Dart アプリケーションがある場合 ( を使用すると、Dart 関数を JavaScript から呼び出せるようにすることができます (例については、 Javascript から Dart 関数を呼び出す方法をmain()参照してください)。

私の知る限り、あなたの要件をサポートする計画はありますが、進捗状況やそのような機能がいつ利用可能になるかについてはわかりません.

これは関連プロジェクトですhttps://github.com/dart-lang/js-interop

于 2014-12-05T17:17:20.690 に答える