2016-01-29 17 views
9

मैंने Angular2 सीखना शुरू कर दिया है, लेकिन मैं अपने वेब एपीआई में http.post() का उपयोग कर एक फॉर्म जमा करना चाहता हूं लेकिन मैं नहीं कर सकता।जावास्क्रिप्ट का उपयोग कर कोणीय 2 http पोस्ट फ़ंक्शन का उपयोग करके फ़ॉर्म कैसे सबमिट करें?

+0

देखें: https://angular.io/docs/ts/latest/guide/server-communication.html और https://angular.io/docs/ts/ नवीनतम/एपीआई/http/Http-class.html – Langley

+0

लेकिन 'जावास्क्रिप्ट' के लिए कोई उदाहरण नहीं है। सभी प्रकार 'टाइपस्क्रिप्ट' में लिखे गए हैं लेकिन मुझे 'टाइपस्क्रिप्ट' –

+0

समझ में नहीं आता है, बस यहां देखें कि यह आपके दृश्य को साफ़ कर सकता है http://stackoverflow.com/a/34758630/5043867! –

उत्तर

11

अपने घटक के भीतर, आपको बस submit ईवेंट पर श्रोता संलग्न करने की आवश्यकता है और HTTP अनुरोध निष्पादित करने के लिए http ऑब्जेक्ट का लाभ उठाने की आवश्यकता है। इस वस्तु को पहले घटक के निर्माता में इंजेक्शन दिया गया था।

var Cmp = ng.core. 
    Component({ 
    selector: 'cmp' 
    template: ` 
     <form (submit)="submitForm()"> 
     <input [(ngModel)]="element.name"/> 

     <button type="submit">Submit the form</button> 
     </form> 
    ` 
    }). 
    Class({ 
    constructor: [ ng.http.Http, function(http) { 
     this.http = http; 
    }], 

    submitForm: function() { 
     var headers = new ng.http.Headers(); 
     headers.append('Content-Type', 'application/json'); 

     this.http.post('http://...', JSON.stringify(this.element), { 
     headers: headers 
     }).subscribe(function(data) { 
     console.log('received response'); 
     }); 
    } 
    }); 

आप जब अपने आवेदन bootstrapping HTTP_PROVIDERS जोड़ने की जरूरत: https://plnkr.co/edit/Fl2pbKxBSWFOakgIFKaf?p=preview:

document.addEventListener('DOMContentLoaded', function() { 
    ng.platform.browser.bootstrap(Cmp, [ ng.http.HTTP_PROVIDERS]); 
}); 

यहाँ इसी plunkr है।

आशा है कि यह आप में मदद करता है, थियरी

+1

धन्यवाद ब्रो ... यह काम कर रहा है ... वास्तविकता मैं 'कोणीय 2' सीख रहा हूं और बहुत संसाधन नहीं हैं 'जावास्क्रिप्ट' पर 'anguler 2' के बारे में इसलिए मुझे कई समस्याएं मिलीं जिन्हें मैं हल नहीं कर सकता। –

+0

आपका स्वागत है! मुझे पता है कि Angular2 टीम इस पर काम करती है लेकिन इस स्तर पर सबसे अच्छी कीमतें पर्याप्त स्पष्ट नहीं लगती हैं ;-) –

+0

यदि आपको कोई फर्क नहीं पड़ता है तो आपको कोई विचार नहीं है कि मैं 'जावास्क्रिप्ट' भाषा में मूल 'कोणीय 2' सीखता हूं ? बिना [angular.io] वेबसाइट –

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