0

私のシングルページアプリケーションでは、特にjavascriptファイルで、リロール機能のキャッチされていない参照にエラーが発生しています。私はこの問題の原因を理解していません。私のjsファイルの設定が間違っていますか? 指定された特定のエラーは、参照エラーです。リロールは定義されていません。AngularJS単一ページアプリケーション:参照エラー、____が定義されていません

HTML:

<body ng-app="app"> 
    <!-- == Main Controller for SPA == --> 
    <div class="container-fluid bg-dark text-white" style="height:700px" ng-controller="mainCtrl"> 
    <!-- == App Title == --> 
    <h2 class="display-2 title-container text-center">{{main.title}}</h2> 
    <div class="row"> 
     <div class="container-fluid word-container text-center"> 
     <!-- == User Phrase Input == --> 
     <input type="text" ng-model="word" placeholder="Please enter word"> 
     <br> 
     <br> 
     </div> 
    </div> 
    <div class="row"> 
     <div class="container-fluid anagram-container text-center"> 
     <!-- == Final anagram == --> 
     Anagram: {{anagram}} 
     </div> 
    </div> 
    <div class="row"> 
     <div class="container-fluid button-container text-center"> 
     <!-- Anagram "Reroll" Button --> 
     <button type="button" ng-click="reroll(word)" class="btn btn-primary btn-large">Reroll</button> 
     <!-- Anagram "Clear" Button --> 
     <button type="button" class="btn btn-primary btn-large" ng-click="word=''">Clear</button> 
     </div> 
    </div> 
    </div> 
</body> 

Javascriptを:

var app = angular.module("app", []); 
app.controller('mainCtrl', function($scope) { 
    $scope.main = {}; 
    $scope.main.title = "AnagramJS"; 
    $scope.reroll = function reroll(value) { 
    // set anagram to randomize 
    $scope.anagram = value.split('').sort(function() { 
     return 0.5 - Math.random() 
    }).join(''); 
    }; 
    $scope.$watch('word', (newVal, oldVal) => { 
    if (newVal) { 
     reroll(newVal); 
    } else { 
     // empty anagram if word is empty 
     $scope.anagram = ""; 
    } 
    }); 
    angular.extend($scope, { 
    reroll 
    }); 
}); 
+0

を削除($ scope、{ reroll }); – Satpal

答えて

0

reroll(newVal)$scope.reroll(newVal);

する必要があります。また、私はあなたが `angular.extendを削除する必要があると思う

angular.extend($scope, { 
    reroll 
}); 
+0

ありがとうございました!出来た。 – FreshOceans

関連する問題