Dartのドキュメントのどこでも、javascriptの相互運用性のためにjs
パッケージを使用することをお勧めします。dart:jsとjsパッケージの違いは何ですか?
しかし、私は最近、類似した(しかし同じではない)インターフェイスを持つと思われるSDKにdart:js
パッケージが存在することを発見しました。
これらのパッケージに違いはありますか?彼らは同等の機能はありますか?どれがお勧めですか?
Dartのドキュメントのどこでも、javascriptの相互運用性のためにjs
パッケージを使用することをお勧めします。dart:jsとjsパッケージの違いは何ですか?
しかし、私は最近、類似した(しかし同じではない)インターフェイスを持つと思われるSDKにdart:js
パッケージが存在することを発見しました。
これらのパッケージに違いはありますか?彼らは同等の機能はありますか?どれがお勧めですか?
Js interopがpackage:jsで開始しました。それはwindow.postMessageで構築されました。
後でdart:jsが追加され、コンパイルされたjsファイルのパフォーマンスが向上し、サイズが小さくなりました。基本的な目標は以下の通りであった。スコープとライフサイクルマニュアルの取り扱いを取り除く
APIがより理解しやすくするために、オブジェクトの名前を変更
パッケージ: JS JSサイズの増加を犠牲にしていますシンプルなAPI(ミラーとnoSuchMethod: JS ダーツを使用していますのでパッケージ)を提供します。ここで
はパッケージで行わ同じものです:とダーツJS: JS:
import 'package:js/js.dart' as js;
main() {
var pixi = new js.Proxy(js.context.PIXI.Stage, 0xffffff);
var renderer = js.context.PIXI.autoDetectRenderer(400, 400);
document.body.append(renderer.view);
}
import 'dart:js' as js;
main() {
var pixi = new js.JsObject(js.context['PIXI']['Stage'], [0xffffff]);
var renderer = js.context['PIXI'].callMethod('autoDetectRenderer', [400, 400]);
document.body.append(renderer['view']);
}