javascript - que - dart web
¿Dart apoyará el uso de bibliotecas de JavaScript existentes? (5)
Ahora hay una nueva forma más simple https://pub.dartlang.org/packages/js (actualmente versión 0.6.0-beta.6)
Haga que las clases y funciones de JS estén disponibles para Dart como:
@JS("JSON.stringify")
external String stringify(obj);
@JS(''google.maps'')
library maps;
// Invokes the JavaScript getter `google.maps.map`.
external Map get map;
// `new Map` invokes JavaScript `new google.maps.Map(location)`
@JS()
class Map {
external Map(Location location);
external Location getLocation();
}
// `new Location(...)` invokes JavaScript `new google.maps.LatLng(...)`
//
// We recommend against using custom JavaScript names whenever
// possible. It is easier for users if the JavaScript names and Dart names
// are consistent.
@JS("LatLng")
class Location {
external Location(num lat, num lng);
}
para más información, consulte el archivo Léame del paquete
Comprendo que Dart compila JavaScript, y leí el Dart Language Spec en Libraries, aunque no vi una respuesta allí. También una búsqueda en su formulario de discusión para la palabra ''existente'' muestra 3 resultados que no están relacionados.
¿Alguien sabe si Dart apoyará el uso de bibliotecas JavaScript existentes como jQuery o Raphael?
La respuesta ahora es ¡Sí! Dart ahora envía una biblioteca de interoperabilidad JS para usar el código JavaScript existente con su aplicación Dart. Obtenga más información aquí: https://www.dartlang.org/articles/js-dart-interop/
No podrá invocar javascript directamente desde el código de dart. La directiva nativa está reservada para las bibliotecas principales de dartc (dart: core, dart: dom, dart: html, dart: json, etc.), que a su vez compila en javascript.
También hay una biblioteca dart:js
. Y aquí hay https://www.dartlang.org/articles/js-dart-interop/ explica cómo usar esta biblioteca para interoperar con JavaScript.
Ver este hilo del foro de discusión: Llamar al código javascript antiguo .