2015-12-10 3 views
0

Я получаю эту ошибку:Функция неприятности

enter image description hereenter image description here

var appname = angular.module('appname', []); 

appname.controller("hipotecaController", ['$scope', function ($scope) { 
    $scope.hipoteca = { 
     capital: undefined, 
     anyos: undefined, 
     interesAplicado: "", 
     interes: undefined, 
     tipoEuribor: "", 
     Euribor: undefined, 

     interesOpcion: function() { 
      return $scope.hipoteca.interesAplicado === "Fijo" 
     } 

     tipoOpcion: function() { 
      if ($scope.hipoteca.Euribor === "EURIBOR") { 
       $scope.hipoteca.Euribor = 0.8; 
      } 
      else if ($scope.hipoteca.Euribor === "EURIBOR3") { 
       $scope.hipoteca.Euribor = 0.4; 
      } 
     } 
    } 
}]); 

Я не знаю, что происходит. Если я использую только одну функцию, она работает.

+1

Должно быть разделено запятой – Konst

+0

Я знаю, что это может быть сложно, но гораздо лучше разместить эту ошибку как текст здесь, а не связывать скриншот. Если ссылка на это изображение погаснет, этот вопрос будет бесполезен для будущих посетителей. –

ответ

4

Просто поставить запятую после функции:

interesOpcion:function(){ 
    return $scope.hipoteca.interesAplicado==="Fijo" 
},  // << This comma 

Вы определяете объект как $scope.hipoteca и после каждого значения ключа (если последний) объекта, вы должны поставить запятую, как:

$scope.foo = { 
    fname: "John", 
    lname: "Doe", 
    age: 24 
}; 

Как вы сказали, если вы определения одной функции т.е. interesOpcion она работала, так как это был последний ключ-значение этого объекта, так что вы не получали какую-либо ошибку. Но когда вы определили другую функцию, то есть tipoOpcion, поэтому перед определением вам нужно добавить запятую после тела функции interesOpcion, как указано выше.

5

Вам нужна запятая после вашего первого объявления функции, когда вы делаете это внутри объекта.

interesOpcion:function(){ 
    return $scope.hipoteca.interesAplicado==="Fijo" 
}, 
tipoOpcion:function(){ 
    if($scope.hipoteca.Euribor==="EURIBOR"){ 
    $scope.hipoteca.Euribor=0.8; 
    } 
    else if($scope.hipoteca.Euribor==="EURIBOR3"){ 
    $scope.hipoteca.Euribor=0.4; 
    } 
} 

Поскольку вы не имеете завершающую запятую перед tipOpcion, объект планируется закрыть, поэтому функция tipOpcion объект является unexpected identifier.