प्रकार के पैरामीटर के लिए असाइन करने योग्य नहीं है। मैं VSCode का उपयोग कर स्क्रिप्ट टाइप करने के लिए नया हूं।प्रकार 'एक्स' का तर्क 'एक्स'
हो रही निम्न त्रुटियों:
-
त्रुटि TS2322: प्रकार '() => स्ट्रिंग' टाइप करने के लिए 'स्ट्रिंग' आबंटित नहीं है।
-
त्रुटि TS2322: प्रकार '() => संख्या' 'संख्या' टाइप करने के लिए आबंटित नहीं है।
कोड:
DTO.ts
interface DTO {
getId(): number;
getValue(): string;
}
export = DTO;
LinkedObject.ts
class LinkedObject {
public value: string = "Not Set";
public id: number = 0;
constructor(value?: string, id?: number) {
this.value = value;
this.id = id;
}
}
export = LinkedObject;
मैं का दृष्टांत को 01 कोशिश कर रहा हूँवर्ग उल्लेख इंटरफ़ेस तरीकों से ऊपर का उपयोग कर:
TravelClientFormPopulator.ts
class TravelClientFormPopulator {
public populateComboBoxUsingDTOs(dataObjects: Array<DTO>, comboBoxID: string): void {
// Get the combo box
var selectElement = <HTMLSelectElement> document.getElementById(comboBoxID);
// Reset the options
selectElement.options.length = 0;
var linkedObjectsToAdd: LinkedObject[] = new Array<LinkedObject>();
var defaultLinkedObject: LinkedObject = new LinkedObject("Not Selected", 0);
linkedObjectsToAdd.push(defaultLinkedObject);
for (var i = 0; i < dataObjects.length; i++) {
var value: string = dataObjects[i].getValue; // Error here
var id: number = dataObjects[i].getId; // And here
var linkedObject: LinkedObject = new LinkedObject(value, id);
}
}
}
किसी भी मदद अत्यधिक सराहना की जाएगी।
यह समझना उपयोगी है कि भविष्य में भी आपकी मदद करने के लिए त्रुटि क्या कह रही है। 'टाइप'() => स्ट्रिंग 'टाइपिंग' टाइप करने के लिए असाइन करने योग्य नहीं है। 'मूल रूप से इस उदाहरण में कह रहा है "एक स्ट्रिंग जो एक स्ट्रिंग देता है वह टाइप स्ट्रिंग के चर के लिए असाइन करने योग्य नहीं है" एक बार जब आप पढ़ते हैं() => स्ट्रिंग 'सही ढंग से यह सब समझ में होना चाहिए। यदि यह शुद्ध जेएस था तो आपको कोई त्रुटि नहीं मिली होगी और आपका वैरिएबल वापस किए गए मान के बजाए फ़ंक्शन पर इंगित कर रहा होगा और यह पता चलाना मुश्किल होगा कि क्या हो रहा है। – DeezCashews