2012-04-14 19 views
9

मैं DART के लिए नया हूं। क्या DART पर Google मानचित्र जावास्क्रिप्ट एपीआई का उपयोग करना संभव है? यदि अब यह सीधे संभव नहीं है, तो क्या कोई अन्य वैकल्पिक तरीका है?Google मानचित्र और डार्ट

+1

18bytes, इस प्रश्न का उत्तर बदल गया है। क्या आप हरे रंग के चेकमार्क को भी आगे बढ़ाना चाहते हैं? धन्यवाद! –

उत्तर

7

का उपयोग कर सीधे डार्ट से Google Maps REST API का उपयोग कर सकते हैं अब आप pub पर google_maps package उपलब्ध कर सकते हैं। यह लाइब्रेरी आपको डार्ट स्क्रिप्ट से Google मानचित्र जावास्क्रिप्ट एपीआई का उपयोग करने की अनुमति देती है।

बस एक <script> टैग का उपयोग कर अपने pubspec.yaml को निर्भरता को जोड़ने

dependencies: 
    google_maps: ">=1.0.1 <2.0.0" 

मैप्स एपीआई जावास्क्रिप्ट को शामिल करें।

<script src="http://maps.googleapis.com/maps/api/js?sensor=false"></script> 

फिर आप डार्ट स्क्रिप्ट से Google मानचित्र का उपयोग कर सकते हैं। http://www.dartlang.org/articles/js-dart-interop/

उस पृष्ठ पर उदाहरणों में से एक Google Apps के साथ interoperate करने के लिए कैसे है:

import 'dart:html'; 
import 'package:google_maps/google_maps.dart'; 

void main() { 
    final mapOptions = new MapOptions() 
    ..zoom = 8 
    ..center = new LatLng(-34.397, 150.644) 
    ..mapTypeId = MapTypeId.ROADMAP 
    ; 
    final map = new GMap(query("#map_canvas"), mapOptions); 
} 
+0

मैंने कोशिश की लेकिन 'आयात' मुझे एक त्रुटि संदेश दे रहा है "आदेश से बाहर निर्देश"। कोई संकेत यह क्यों कर रहा है? – Stan

+0

यह r14458 के साथ अच्छी तरह से काम करता है। –

+0

धन्यवाद, लेकिन मैं 13851 का उपयोग करने के लिए अटक गया हूं और मुझे लगता है कि यह समस्या है। मुझे सही वाक्यविन्यास मिला हालांकि: '#import ('पैकेज: जेएस/जेएस डार्ट', उपसर्ग: 'जेएस'); ', अभी तक किसी की मदद कर सकता है। – Stan

2

यदि आप जावास्क्रिप्ट के साथ संवाद करना चाहते हैं तो वर्तमान में आपको postMessage डार्ट से उपयोग करने की आवश्यकता है (यह अंत में बदल जाएगा)। तो अब के लिए आप अपने अनुप्रयोग है कि करने के लिए और Google के संदेशों की मध्यस्थता करता करने के लिए कुछ जावास्क्रिप्ट कोड जोड़ने की आवश्यकता होगी नक्शे जे एस एपीआई और डार्ट:

function googleMapsCallback(s) { 
    window.postMessage(JSON.stringify(s), '*'); 
} 

और फिर अपने डार्ट कोड में:

class GoogleMap { 
    GoogleMap() { 
    window.on.message.add(received, false); 
    } 

    received(MessageEvent e) { 
    var data = JSON.parse(e.data); 
    // do stuff with google maps data 
    } 
} 

Alternativly आप XMLHttpREquest

+0

धन्यवाद। मैं केवल शुरुआत में Google मानचित्र रीस्ट एपीआई का उपयोग करने के बारे में सोच रहा था। – 18bytes

1

डार्ट अब एक जावास्क्रिप्ट अंतर पुस्तकालय है: यहाँ एक सरल उदाहरण है।

संबंधित मुद्दे