मैं एक angular2 प्रतिक्रियाशील प्रपत्र को लागू करने की कोशिश कर रहा हूँ है की संपत्ति ढेर सेट नहीं कर सकता, लेकिन मैं एक रन समय त्रुटि मिलती है जब घटककोणीय 2 प्रतिक्रियाशील रूप | ध्यान में न आया लेखन त्रुटि: [वस्तु वस्तु] जो केवल एक गेटर
Uncaught TypeError: Cannot set property stack of [object Object] which has only a getter
लोड हो रहा है यह त्रुटि बिल्कुल स्पष्ट नहीं है, इसलिए मुझे यह पता लगाना मुश्किल हो रहा है कि क्या हो रहा है। मैं angular university article के साथ अनुसरण कर रहा हूं। मैंने सोचा कि शायद तोड़ने वाले बदलाव हुए थे, इसलिए मैंने कोणीय 2 चेंजलॉग की जांच की लेकिन प्रतिक्रियाशील रूपों के साथ मेरी समस्या से संबंधित कुछ भी नहीं मिला।
किसी भी मदद के लिए यहाँ की सराहना की जाएगी। मैं एक समाधान के लिए चारों ओर पोकिंग रखने जा रहा हूँ।
addevent.component.ts
@Component({
selector: 'addevent',
templateUrl: 'addevent.component.html',
styleUrls: ['addevent.scss']
})
export class AddEvent {
// vars
private _addEventForm:FormGroup;
private _eventTitle:FormControl;
private _eventDescription:FormControl;
constructor(private _addEventService:AddEventService,
private _formBuilder:FormBuilder) {
// init vars
this. _eventTitle = new FormControl('', Validators.required);
this._eventDescription = new FormControl('', Validators.required);
this._addEventForm = _formBuilder.group({
'eventTitle': this._eventTitle,
'eventDescription': this._eventDescription
});
}
private addEvent():void {
console.log(this._addEventForm);
//this._addEventService.addEvent();
}
}
addevent.component.html
<div class="h3 content-title">Add Event</div>
<form [formGroup]="_addEventForm" (ngSubmit)="addEvent()">
<p>
<label>Title</label>
<input type="text" formControlName="eventTitle">
</p>
<p>
<label>Description</label>
<input type="text" formControlName="eventDescription">
</p>
<p>
<button type="submit" [disabled]="_addEventForm.invalid">Submit</button>
</p>
</form>
dashboard.module.ts
@NgModule({
declarations: [Dashboard, Navbar, Sidebar, Home, Profile, Events, AddEvent],
imports: [BrowserModule, FormsModule, ReactiveFormsModule, HttpModule],
providers: [ContentSwap, SidebarActivity, AuthService, FirebaseAuthService]
})
export class DashboardModule {}
मुझे नहीं लगता कि तुम दोनों ReactiveFormsModule और FormsModule आयात होते रहना चाहिए है। मैंने आपको कोड के रूप में कोड की कोशिश की और त्रुटि नहीं मिली। [यह plunker] देखें (https://embed.plnkr.co/buK2gqHNYwlUnDVPuqTm/)। तो त्रुटि उस कोड से आती है जो आपने नहीं दिखाया था। –
त्रुटि वास्तव में काफी वर्णनात्मक है। कि यह केवल 'के रूप में [वस्तु वस्तु]' (देता है फोन यह obj), आप एक संपत्ति 'stack' (स्थापित करने के लिए कहते हैं बुला' obj.stack = something' से कोशिश कर रहे हैं जानता है तुम एक वस्तु है, लेकिन आप नहीं कर रहे हैं करने की अनुमति दी है क्योंकि 'stack' संपत्ति केवल पढ़ने के लिए है। समस्या यह है कि काम कहीं भी (शायद नहीं अपने कोड, लेकिन शायद कुछ आप पुस्तकालय कोड में पारित के कारण) हो सकती है (एक गेटर, कोई सेटर है) तो आप स्टैक ट्रेस को देखने के लिए देखने के लिए वह कहाँ से आता है की जरूरत है। –
@StevenLuke दोनों मॉड्यूल के लिए आवश्यक हैं, त्रुटि कोणीय प्रपत्र निर्देशों होने से आता है। – oxenfree