【发布时间】:2013-02-09 01:42:13
【问题描述】:
我不确定这是否可行,或者我是否采用了错误的方法,我尝试过搜索,但我不确定这些条款。
我想将一个变量传递给控制器字典,因此在查找时我可以执行控制器('OPTION','PLAY')之类的操作,而不是使用“PLAY”
var ip = '192.168.1.5'
var Keys = {
HOME: '/keypress/Home',
REV: '/keypress/Rev',
FWD: '/keypress/Fwd',
PLAY: '/keypress/Play',
SELECT: '/keypress/Select',
LEFT: '/keypress/Left',
RIGHT: '/keypress/Right',
DOWN: '/keypress/Down',
UP: '/keypress/Up',
BACK: '/keypress/Back',
INSTANTREPLAY: '/keypress/InstantReplay',
INFO: '/keypress/Info',
BACKSPACE: '/keypress/Backspace',
SEARCH: '/keypress/Search',
ENTER: '/keypress/Enter',
A: '/keypress/Lit_a'
}
从此:
var controller = {
PLAY:{
hostname: ip,
port: 8060,
path: Keys['PLAY'],
method: 'POST'
}
}
到这里:
var controller = {
OPTION:{
hostname: ip,
port: 8060,
path: Keys[Key],
method: 'POST'
}
}
我试图避免以下情况
var controller = {
PLAY:{
hostname: ip,
port: 8060,
path: Keys['PLAY'],
method: 'POST'
}
FWD :{
hostname: ip,
port: 8060,
path: Keys['FWD'],
method: 'POST'
}
REV :{
hostname: ip,
port: 8060,
path: Keys['REV'],
method: 'POST'
}
...
}
【问题讨论】:
-
你的问题到底是什么?
-
我不想为每个键写字典查找,即控制器将拥有所有键(由键引用),我将为每个键复制主机名、端口、方法,(许多额外代码用于可能具有较短版本的东西,即更易于阅读)
-
所以创建一个方法
getOption("PLAY")并返回带有新插入路径的对象。 -
好电话(我觉得不采用这种方法有点愚蠢),但是像我建议的那样用这种语言可能吗?
标签: javascript node.js roku