我有一项服务将返回工厂名称。我已经将所有工厂注入(inject) Controller 中。我需要使用该变量来调用该工厂内的方法。我知道我可以使用
if(var == 'factoryname') {
factoryname.method()
}
但我不想要那些 if 条件,因为我有很多工厂。有没有办法像java脚本一样调用工厂内部的方法
窗口[var]
最佳答案
您应该考虑将所有工厂存储在一个对象上:
var factories = {
factoryA: { method: function() {} },
factoryB: { method: function() {} },
};
var factory = 'factoryA';
factories[factory].method();
关于javascript - 如何从变量动态调用工厂方法?,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/28457612/