ডার্ট কি বিদ্যমান জাভাস্ক্রিপ্ট লাইব্রেরিগুলির ব্যবহার সমর্থন করবে?


108

আমি ডার্টটি জাভাস্ক্রিপ্টের সংকলনগুলি বুঝতে পেরেছি এবং আমি লাইব্রেরিগুলিতে ডার্ট ল্যাঙ্গুয়েজ স্পেকটি পড়েছি , যদিও আমি সেখানে কোনও উত্তর দেখিনি। এছাড়াও 'বিদ্যমান' শব্দের জন্য তাদের আলোচনার ফর্মের অনুসন্ধানে 3 টি ফলাফল আসে যা সম্পর্কিত নয়।

কেউ কি জানেন যে ডার্ট বিদ্যমান জাভাস্ক্রিপ্ট লাইব্রেরি যেমন jQuery বা রাফেলের ব্যবহার সমর্থন করবেন কিনা?


1
যদিও আমি এখন প্রশ্ন পোস্ট করছি ।
টিএমবি

উত্তর:


96

উত্তর এখন হ্যাঁ! আপনার ডার্ট অ্যাপের সাহায্যে বিদ্যমান জাভাস্ক্রিপ্ট কোডটি ব্যবহার করতে ডার্ট এখন একটি জেএস-ইন্টারপ লাইব্রেরি পাঠায়। এখানে আরও জানুন: https://www.dartlang.org/articles/js-dart-interop/


স্পষ্টির জন্য ধন্যবাদ, শেঠ!
jtmcdole

@ আমার একটি ফলোআপ প্রশ্ন ছিল। ডার্ট যখন জাভাস্ক্রিপ্ট প্রতিস্থাপনের জন্য শেষ অবধি সেখানে উপস্থিত থাকে তখন ডার্ট থেকে জাভাস্ক্রিপ্ট লাইব্রেরিগুলি ব্যবহার করা কি আপনার পক্ষে সত্যিই বোঝা যায়? এবং ডার্টের ভিজ্যুয়ালাইজেশনের জন্য কিছু অন্তর্নির্মিত রয়েছে?
অমিত তোমার

2
@ অমিতটোমার সম্প্রদায়টি সমস্ত জেএস লাইব্রেরির সাথে সাথেই পোর্ট করতে পারে না, সুতরাং সেখানে প্রচুর পরিমাণে জেএস লাইব্রেরি ব্যবহার করা বোধগম্য হয়। চার্টিংয়ের জন্য (ভিজ্যুয়ালাইজেশন), আমি কেবল জেএস ভিত্তিক লাইব্রেরিগুলির সাথে ইন্টারপ সম্পর্কে সচেতন।
শেঠ লেড

@ শেঠল্যাড ধন্যবাদ শেঠ, এটি সহায়ক ছিল।
অমিত তোমার

ধন্যবাদ শেঠ, আমি নিবন্ধে এটি কীভাবে ব্যবহার করব তাও প্রদর্শন করেছি ।
গ্রাফিকবেকন

15

আপনি ডার্ট কোড থেকে সরাসরি জাভাস্ক্রিপ্ট কল করতে পারবেন না। নেটিভ দিকনির্দেশনাটি ডার্টসি (ডার্ট: কোর, ডার্ট: ডম, ডার্ট: এইচটিএমএল, ডার্ট: জসন, ইত্যাদি) এর মূল গ্রন্থাগারগুলির জন্য সংরক্ষিত আছে, যা নিজেই জাভাস্ক্রিপ্টে সংকলন করে।


আপনি কি এই জন্য একটি রেফারেন্স আছে?
টিএমবি

6
আমি ডার্টক টিমে কাজ করি এবং অভ্যন্তরীণভাবে দেশীয় নির্দেশনা এবং কীওয়ার্ডটি ডার্ট: কেবল গ্রন্থাগারগুলিতে সীমাবদ্ধ রাখার কথা রয়েছে। আপনি অবশ্যই যে কোনও মূল ফাংশনটি দেখতে পারেন (যেমন, আইসোলেট.ডার্ট এবং আইসোলেট.জেএস) এবং দেখুন যে কোনও ফাংশনের স্বাক্ষরে "নেটিভ" কীওয়ার্ড যুক্ত করা (নোট: ডার্ট সংস্করণে কোনও দেহ নয়) আপনাকে ম্যাংলেড জাভাস্ক্রিপ্ট ফাংশনটি কল করতে দেবে; তবে আমরা কোন প্রতিশ্রুতি করি না যে আমরা ভবিষ্যতে আপনাকে ভঙ্গ করব।
jtmcdole

6
ওয়েবকে একটি পরিষ্কার এবং চিন্তাভাবনাযুক্ত ভাষা দেওয়ার আদর্শটি আমি বুঝতে এবং সম্মান করি তবে আমি আপনাকে আন্তঃআস্তাদ বিবেচনা করার জন্য অনুরোধ করছি। মাইক্রোসফ্ট একটি প্রকল্প থেকে ক্রমবর্ধমান স্থানান্তরিত হতে পারে তা নিশ্চিত করার জন্য কম থেকে নেট এ সরবরাহ করেছে। এটি। নেট মোটেও বাধা দেয় না; আমি বিশ্বাস করি এটি এর গ্রহণে সহায়তা করেছে, যদিও তারা সময়ের সাথে এটি উন্নতি করেছিল। যদি ব্রেকিং এমন কিছু হয় যা গুরুতর উদ্বেগের বিষয়, তবে প্রধান লাইব্রেরির জন্য যেমন একটি jQuery, MooTools এবং স্ক্রিপ্ট.একুলো.উসগুলির জন্য একটি আমন্ত্রণমূলক প্রোগ্রামটি বিবেচনা করুন। ধন্যবাদ.
টিএমবি

2
আমাদের ইস্যু ট্র্যাকার @ লিঙ্কের মাধ্যমে একটি বৈশিষ্ট্য অনুরোধ করার জন্য আমি আপনাকে আমন্ত্রণ জানাচ্ছি । এই সিদ্ধান্তটি এখনও পাথর ছুঁড়ে দেওয়া হয়েছে বলে আমি বিশ্বাস করি না।
jtmcdole

1
কেবল এটি ইঙ্গিত করে যে এটিকে আবার একটি সমস্যা হিসাবে নিয়ে আসা হয়েছে: Code.google.com/p/dart/issues/detail?id=1108
jtmcdole

8

এখন একটি নতুন সরল উপায় রয়েছে https://pub.dartlang.org/packages/js (বর্তমানে সংস্করণ 0.6.0-beta.6)

ডার্টের মতো জেএস ক্লাস এবং ফাংশনগুলি উপলভ্য করুন:

@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);
}

আরও জানার জন্য প্যাকেজটির রিডমিটি দেখুন


4

আলোচনার ফোরাম থেকে এই থ্রেডটি দেখুন: পুরানো জাভাস্ক্রিপ্ট কোডটি কল করা


1
তারা নেটিভ কীওয়ার্ডের রেফারেন্স তৈরি করে তবে লাইব্রেরি রেফারেন্স বা ল্যাঙ্গুয়েজ স্পেসে আমি এটি খুঁজে পাই না।
টিএমবি

4

একটি dart:jsগ্রন্থাগারও রয়েছে। এবং এখানে জাভাস্ক্রিপ্টের আন্তঃব্যক্তির জন্য এই লাইব্রেরিটি কীভাবে ব্যবহার করবেন তা ব্যাখ্যা করার জন্য একটি নিবন্ধ রয়েছে


1
লিঙ্কটি সঠিক নয় নোট করুন। ডার্ট / জেএস যা মূল ডার্ট লাইব্রেরির অংশ জাভাস্ক্রিপ্টের ইন্টারফেসে ব্যবহার করা অনেক সহজ এবং ক্লিনার। আমি এই বিষয়টিতে
বিটিং
আমাদের সাইট ব্যবহার করে, আপনি স্বীকার করেছেন যে আপনি আমাদের কুকি নীতি এবং গোপনীয়তা নীতিটি পড়েছেন এবং বুঝতে পেরেছেন ।
Licensed under cc by-sa 3.0 with attribution required.