में इंटरफेस का मिश्रण बनाना मेरे पास 80 से अधिक विधियों वाला एक वर्ग है, और प्रत्येक विधि कुछ परिभाषित इंटरफेस वाले ऑब्जेक्ट को स्वीकार करती है।टाइपस्क्रिप्ट
class Stuff {
/* many more */
getAccount(req: IAccount, callback: ICallback) {
return this._call('getAccount', req, callback);
}
getIds(req: IIDs, callback: ICallback) {
return this._call('getIds', req, callback);
}
/* many more */
}
सुंदर 'उबाऊ' सामान, के बाद से यह सिर्फ अंतर्निहित _call
विधि से मैप और यह तरीकों में से प्रत्येक के लिए सुरक्षित टाइप बना रहा है।
लेकिन कभी कभी इन req
परम वस्तुओं इस तरह, 2 इंटरफेस या अधिक, और बदले हर बार वहाँ एक "अजीब" के लिए एक और इंटरफेस बनाने की से बने होते हैं:
export interface ILoled extends IAccount {
loled: boolean;
}
export interface IRofloled extends ILoled {
rofled: boolean;
}
class Stuff {
getLols(req: ILoled){
}
getRofls(req: IRofloled){
}
}
वहाँ किसी भी तरह से मैं कर सकता है विधि पैरामीटर सूची के अंदर इंटरफ़ेस के बस "इनलाइन" मिश्रण के रूप में इसे डालें? जैसे (स्पष्ट रूप से काम नहीं करते हैं):
class Stuff {
getMoreStuff(req: <{} extends IAccount, ITime>) {
}
}
मुझे डर है कि आपको एक सुपर-इंटरफेस घोषित करना होगा। –