我有4级范围内的变量构造动态变量 - AngularJS
$scope.defined_vars.p_24_device_ssid
$scope.defined_vars.p_50_device_ssid
$scope.defined_vars.g_24_device_ssid
$scope.defined_vars.g_50_device_ssid
我知道,如果我不喜欢这样,我会得到它的工作。
if(section == 'private'){
if(freq == '2.4'){
var wifiIndex = 'p_24';
var ssid = $scope.defined_vars.p_24_device_ssid;
var passphrase = $scope.defined_vars.p_24_device_passphrase;
}else{
var wifiIndex = 'p_50';
var ssid = $scope.defined_vars.p_50_device_ssid;
var passphrase = $scope.defined_vars.p_50_device_passphrase;
}
}else{
if(freq == '2.4'){
var wifiIndex = 'g_24';
var ssid = $scope.defined_vars.g_24_device_ssid;
var passphrase = $scope.defined_vars.g_24_device_passphrase;
}else{
var wifiIndex = 'g_50';
var ssid = $scope.defined_vars.g_50_device_ssid;
var passphrase = $scope.defined_vars.g_50_device_passphrase;
}
}
var data = {
cpe_mac: $scope.cpe_mac,
vlan: section,
freq:freq,
ssid: ssid,
passphrase: passphrase,
};
但
这里的目标是学习如何设置dynamic variables
。
我试图做一个POST
$scope.updateWiFi = function(section,freq) {
if(section == 'private'){
if(freq == '2.4'){
var wifiIndex = 'p_24';
}else{
var wifiIndex = 'p_50';
}
}else{
if(freq == '2.4'){
var wifiIndex = 'g_24';
}else{
var wifiIndex = 'g_50';
}
}
var data = {
cpe_mac: $scope.cpe_mac,
vlan: section,
freq:freq,
ssid: $scope.defined_vars.wifiIndex + '_device_ssid',
passphrase: $scope.defined_vars.wifiIndex + '_device_passphrase',
};
console.log("PUT Data is " + angular.toJson(data));
$http({
method: 'PUT',
url: '/updateWiFi',
data: angular.toJson(data)
})
.then(function successCallback(response) {
console.log(response);
}, function errorCallback(response) {
console.log("%cError in updateWiFi()", "color: red;");
console.log(response.statusText);
});
};
之前动态设置我一直得到
$scope.defined_vars.wifiIndex + '_device_ssid',
undefined_device_passphrase
一个如何去实现这个一种任务?
我接受任何建议在这一刻。
任何提示/建议/对此的帮助将非常感谢!