Appeler javascript depuis Dart

J'ai pu déclencher un message d'alerte de dart, mais je ne pouvais pas comprendre comment appeler une fonction que j'ai écrite dans un autre fichier js de dart. Ce serait un excellent point de vente si c'était simple. J'ai vu cette publication , qui m'a permis de commencer, mais je pense qu'il doit y avoir un moyen, alors, partagez l'amour si vous l'avez compris.

Voici ce que j'ai fait:

  1. Ajoutez ceci au fichier yaml:

    Dépendances: js: hébergé: js

  2. Ajouter l'instruction import vers le haut du fichier dart: importer 'package: js / js.dart' comme js;

  3. Ajouter ce code pour afficher un message d'alerte

    Js.scoped (() {js.context.alert ("sauter pour la joie!");});

  4. Voici la partie qui, selon moi, devrait fonctionner, mais pas: étant donné que j'ai une fonction javascript doSomething (), je devrais pouvoir appeler

    Js.context.doSomething ();

Ajoutez d'abord le paquet js en tant que dépendance dans votre pubspec.yaml :

 dependencies: js: any 

Ensuite, vous pouvez utiliser votre propre fonction js myFunc() comme ça:

 import 'package:js/js.dart' as js; main() { js.context.myFunc(); } 

js.context est un alias sur la window javascript.

Voir Utilisation de JavaScript depuis Dart: la bibliothèque js pour plus de détails.