Вам не нужно сопоставлять файл JavaScript , вам просто нужно сопоставить объекты и функции JS.
Вам необходимо добавить тег сценария в index.html
, который загружает файл JavaScript, с которым вы хотите сопоставить, и он станет доступен глобально.
Затем вам нужно отобразить
Функции Dart для функций JavaScript, поэтому при вызове такой функции Dart вызов фактически будет перенаправлен в функцию JavaScript.
Классы Dart, так что вы можете использовать строго типизированные классы Dart, которые затем будут преобразованы в объекты JavaScript и из них, когда вы, например, передаете их в качестве параметров сопоставленным функциям или получаете их в качестве возвращаемых значений от таких вызовов функций.
@JS('Chart')
library chart.js;
Имя chart.js
после library
является произвольным. Директиве library
просто нужно уникальное имя.
@JS('Chart')
означает, что загруженная библиотека chart.js доступна на земле JavaScript под window.Chart
(window
означает глобальную на земле JS и является неявной).
@JS()
class Chart {
объявляет класс Dart Chart
, а @JS()
отображает его в класс JS с тем же именем в объявленной выше области библиотеки. Таким образом, класс Dart Chart
будет сопоставлен с классом JavaScript window.Chart.Chart
.
external factory Chart(
Объявления external ...
внутри класса Dart Chart
отображаются на методы JS с тем же именем.
Более подробную информацию можно найти в файле README.md https://pub.dartlang.org/packages/js.
Если вы все еще застряли, вы можете задать более конкретные вопросы. Трудно ответить на общие вопросы о том, как использовать пакет.