Обновление глобалов во время задания Вар - PullRequest
0 голосов
/ 18 марта 2020

Проблема, с которой я сталкиваюсь, заключается в том, что когда я запускаю функцию, а затем назначаю переменные данных, по какой-то причине каждый раз обновляю глобальные данные. Я не вижу, где в моем коде я призываю обновить мой глобальный. Что-то мне не хватает?

var newInputs = $scope.configurationMap['RDY2000'].configuration.inputs.universalOffsets;
$scope.rdyInputs = function(){

    var input = [];

    for (var x = 0; x < newInputs.length; x++) {
        if (newInputs[x].sensorType) {
            input.push(newInputs[x])
        }
    }   
    return input
}

if($scope.data.property = 'rdy2000'){
    $scope.inputs = $scope.rdyInputs($scope.data);
    var Test = configUtilService.getOnlyCts(inputsKeyList)
    var counter = Test.length + 1;
    var tether = $scope.originalData.tether[0];

    for (var x = 0; x < $scope.inputs.length; x++) {
        $scope.data.inputs[x] = $scope.inputs[x]
        $scope.data.inputs[x].key = 'CT' + counter;
        $scope.data.inputs[x].type = 'ct';
        $scope.data.inputs[x].description = tether +  $scope.inputs[x].description;
        counter++;
    }
}

1 Ответ

0 голосов
/ 18 марта 2020

Возможно, функции rdyInputs нужен параметр:

̶$̶s̶c̶o̶p̶e̶.̶r̶d̶y̶I̶n̶p̶u̶t̶s̶ ̶=̶ ̶f̶u̶n̶c̶t̶i̶o̶n̶(̶)̶{̶
$scope.rdyInputs = function(newInputs){

    var input = [];

    for (var x = 0; x < newInputs.length; x++) {
        if (newInputs[x].sensorType) {
            input.push(newInputs[x])
        }
    }   
    return input
}

Не использовать глобальную переменную; используйте параметр.

...