我试图创建一个打字原稿工厂类,但是遇到了以下错误:因为类型'Window'没有索引签名,因此元素隐式地具有'any'类型?
src/ts/classes/Factory.ts(8,10): error TS7017: Element implicitly has an 'any' type because type 'Window' has no index signature.
我试图寻找这个错误,但没有看到任何东西,相当匹配,我想什么做。
以下是我的工厂类。
/**
* @class Factory
*
* @description Returns object based on given class string
*/
class Factory {
public class(className: string): any {
return window[className];
}
}
我宁愿不只是压制编译器中的隐含错误。
任何建议或帮助将不胜感激!如果这不是做这件事的最好方式,我肯定会改变它。
BTW:这不是一个工厂按照OOP的指导方针。我不知道你在'window'中存储了什么,但工厂应该根据某些输入创建对象,而不是从某些神对象中选择对象。这整个方法只是简单地调用'window [className'而不是毫无意义的语法。 – k0pernikus
像这样的可能是[xy问题](http://meta.stackexchange.com/questions/66377/what-is-the-xy-problem)。你想做什么? –
谢谢,@ k0pernikus。我认为我试图让这个过程比需要的更复杂。 – abkothman