我有一个名为MyService.js
的服务,其中MyAction
已导出,可以在任何地方调用
MyService.MyAction()
我需要将其称为变量。以下作品
var myAction = "MyAction"
MyService[myAction]()
但是,是否有办法对服务名称使用相同的逻辑?例如:
var myAction = "MyAction"
var myService = "MyService"
myService[myAction]()
我相信这应该使用sails
对象运行,但我不知道从哪里开始。
是否有类似的内容:
sails.services[myService][myAction]()
答案 0 :(得分:1)
在摆弄帆船物体后,我找到了解决方案。
为了将服务作为变量调用,您需要确保服务名称是小写的,因为Sails如何存储它们。显然,这些操作保留了原始案例,因此它们区分大小写。
var myAction = "MyAction"
var myService = "MyService"
sails.services[myService.strToLower()][myAction]()