2014-12-30 75 views
-1

我得到這個錯誤,我不知道我在做什麼錯 錯誤:不確定是不是(評估「$ scope.userFormData.cpr」)

可有一個人幫我出個對象,由於IM不知道什麼即時通訊做錯了,錯誤一旦有我而不是加載頁面

$scope.$watch(function() { 
       return $scope.userFormData.cpr; 
      }, 
      function (cprValue) { 

       console.log(cprValue); 

       //For at scriptet ikke skal faile første gang det bliver loadet 
       //tjekker vi om medlemmet har skrevet noget i cpr feltet 
       if (cprValue === undefined) { 
        return false; 
       } 

       //Hent brugerens input og split dem op 
       var cpr = cprValue.toString(); 

       //Hvis cpr undeholder en streg - 

       var dd = +cpr.substr(0, 2); // 01 
       var mm = +cpr.substr(2, 2); // 02 
       var yy = +cpr.substr(4, 2); // 90 

       //Calculate if 90 is > 50 
       if (yy > 50) { 
        var year = yy + 1900; 
       } else { 
        var year = yy + 2000; 
       } 

       //Sæt fødselsdags datoen sammen så momentJS forstår det 
       var final = mm + "/" + dd + "/" + year; 

       //Beregn datoen og split resultatet op så vi kun får fødselsdags tallet 
       var alder = moment(final, "MM/DD/YYYY").fromNow().split(" ")[0]; 

       //Vi clear ageToYoung feltet hvis det har været udfyldt 
       //og disabler andenBetaler vinduet igen 
       $scope.ageToYoung = ""; 
       $scope.hideSecondpayer = true; 


       //Hvis personen er mellem 15 og 18 år så vis andenBetaler boksen 
       if ((alder >= 15) && (alder <= 18)) { 
        $scope.hideSecondpayer = false; 
        $scope.hideRegnrBarn = true; 
        $scope.hideKontonrBarn = true; 

       } else if (alder <= 14) { 

        //Personen er ikke gammel nok, og vi skriver det derfor til kunden 
        $scope.ageToYoung = "Du skal minimum være 15 år gammel"; 
       } 

      }); 

回答

0

匿名函數返回它的,直接適用範圍$watch對象 -

$scope.$watch('userFormData.cpr', 
      function (cprValue) { 

       console.log(cprValue); 

       //For at scriptet ikke skal faile første gang det bliver loadet 
       //tjekker vi om medlemmet har skrevet noget i cpr feltet 
       if (cprValue === undefined) { 
        return false; 
       } 

       //Hent brugerens input og split dem op 
       var cpr = cprValue.toString(); 

       //Hvis cpr undeholder en streg - 

       var dd = +cpr.substr(0, 2); // 01 
       var mm = +cpr.substr(2, 2); // 02 
       var yy = +cpr.substr(4, 2); // 90 

       //Calculate if 90 is > 50 
       if (yy > 50) { 
        var year = yy + 1900; 
       } else { 
        var year = yy + 2000; 
       } 

       //Sæt fødselsdags datoen sammen så momentJS forstår det 
       var final = mm + "/" + dd + "/" + year; 

       //Beregn datoen og split resultatet op så vi kun får fødselsdags tallet 
       var alder = moment(final, "MM/DD/YYYY").fromNow().split(" ")[0]; 

       //Vi clear ageToYoung feltet hvis det har været udfyldt 
       //og disabler andenBetaler vinduet igen 
       $scope.ageToYoung = ""; 
       $scope.hideSecondpayer = true; 


       //Hvis personen er mellem 15 og 18 år så vis andenBetaler boksen 
       if ((alder >= 15) && (alder <= 18)) { 
        $scope.hideSecondpayer = false; 
        $scope.hideRegnrBarn = true; 
        $scope.hideKontonrBarn = true; 

       } else if (alder <= 14) { 

        //Personen er ikke gammel nok, og vi skriver det derfor til kunden 
        $scope.ageToYoung = "Du skal minimum være 15 år gammel"; 
       } 

      }); 
+1

謝謝!有用 – sij