मैं सोच रहा हूं कि फ़ंक्शन को मान के रूप में पास करने के लिए मैं एक प्रकार के कन्स्ट्रक्टर का संदर्भ कैसे प्राप्त कर सकता हूं। असल में, मैं एक सामान्य प्रकार की रजिस्ट्री रखना चाहता हूं जो सामान्य प्रकार के रजिस्ट्री उदाहरण के सदस्य फ़ंक्शन को कॉल करके उदाहरणों को बनाने की अनुमति देगा।कन्स्ट्रक्टर फ़ंक्शन का संदर्भ
उदाहरण के लिए:
class GeometryTypeInfo
{
constructor (public typeId: number, public typeName: string, public fnCtor: (...args: any[]) => IGeometry) {
}
createInstance(...args: any[]) : IGeometry { return this.fnCtor(args); }
}
}
बाद में:
class Point implements IGeometry {
constructor(public x: number, public y: number) { }
public static type_info = new GeometryTypeInfo(1, 'POINT', Point); // <- fails
// also fails:
// new GeometryTypeInfo(1, 'POINT', new Point);
// new GeometryTypeInfo(1, 'POINT', Point.prototype);
// new GeometryTypeInfo(1, 'POINT', Point.bind(this));
}
किसी को भी पता है कि अगर यह एक कक्षाएं निर्माता समारोह संदर्भ के लिए संभव है?
धन्यवाद, मुझे कल्पना में 'नया' शाब्दिक याद आया। –
'// <- विफलता 'में मुझे लगता है कि यह समाधान है, यह अब विफल नहीं होता है, अगर यह सही है तो आप इसे // // <में संपादित कर सकते हैं - अब और असफल नहीं होता है? अन्यथा यह थोड़ा भ्रामक है, thx – peter