Dart가 기존 JavaScript 라이브러리 사용을 지원합니까?
나는 Dart가 JavaScript로 컴파일된다는 것을 이해하고 , 거기에서 답을 보지 못했지만 라이브러리 에서 Dart 언어 사양 을 읽었 습니다. 또한 토론 양식 에서 '기존'이라는 단어를 검색 하면 관련없는 3 개의 결과가 나타납니다.
Dart가 jQuery 또는 Raphael과 같은 기존 JavaScript 라이브러리의 사용을 지원하는지 아는 사람이 있습니까?
대답은 이제 예입니다! Dart는 이제 Dart 앱에서 기존 JavaScript 코드를 사용하는 JS-interop 라이브러리를 제공합니다. 여기에서 자세히 알아보세요 : https://www.dartlang.org/articles/js-dart-interop/
dart 코드에서 직접 javascript를 호출 할 수 없습니다. native 지시문은 자체적으로 javascript로 컴파일되는 dartc의 핵심 라이브러리 (dart : core, dart : dom, dart : html, dart : json 등) 용으로 예약되어 있습니다.
이제 더 간단한 방법 https://pub.dartlang.org/packages/js (현재 버전 0.6.0-beta.6)가 있습니다.
다음과 같이 Dart에서 JS 클래스와 함수를 사용할 수 있도록합니다.
@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);
}
자세한 내용은 패키지 읽어보기를 참조하십시오.
토론 포럼에서이 스레드를 참조하십시오 : Calling old javascript code .
dart:js
도서관 도 있습니다. 그리고 여기에 기사 자바 스크립트와 상호 운용이 라이브러리를 사용하는 방법을 설명가.
'Programing' 카테고리의 다른 글
Express 4.0, 이상한 경고 메시지가있는 익스프레스 세션 (0) | 2020.08.14 |
---|---|
JavaScript로 CSS 규칙 값을 어떻게 읽습니까? (0) | 2020.08.14 |
ResultSet을 JSON으로 가장 효율적으로 변환합니까? (0) | 2020.08.14 |
소켓 프로그래밍과 Http 프로그래밍의 차이점 (0) | 2020.08.14 |
Real World Haskell의 어느 부분이 현재 쓸모 없거나 나쁜 습관으로 간주됩니까? (0) | 2020.08.14 |