2016-10-31 17 views
0
{% load staticfiles %} 

<html ng-app="myBlog"> 
    <head> 
<!--  <script src="https://ajax.googleapis.com/ajax/libs/angularjs/1.5.6/angular.min.js"></script> 
--> <script type="text/javascript" src="{% static 'js/libs/angular.min.js' %}"></script> 
<!--  <script type="text/javascript" src="{% static 'js/modules/app.module.js' %}"></script> 
     <script type="text/javascript" src="{% static 'js/modules/app.config.js' %}"></script> --> 
<!--  <script type="text/javascript" src="{% static 'js/modules/blog-list.module.js' %}"></script> 
-->  <script type="text/javascript" src="{% static 'js/controllers/blog-list.js' %}"></script> 
    </head> 

    <body> 
     <input type="text" ng-model="name"> 
     <p>hi , {{name}}</p> 

     <div ng-controller="Controller"> 
      <h1>{{title}}</h1> 
      <button ng-click="someTest()">click</button> 
     </div> 
    </body> 
</html> 

を定義されていないボタンがクリックされると、コントローラ

'use strict' 

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

blogList.controller('Controller', ['$scope', function($scope){ 

     $scope.clicks=""; 

     console.log("he"); 
     $scope.title = 'Hi there'; 
     $scope.clicks = 0; 
     console.log($scope) 

     $scope.someTest = function(){ 
      console.log($scope) 
      console.log("there") 
      $scope.clicks +=1; 
      $scope.title = 'Clicked' + clicks; 
     }; 
}]); 

は、それがエラーに私はエラーを取り除くことができますどのように

angular.min.js:118 ReferenceError: clicks is not defined at b.$scope.someTest (blog-list.js:16) at fn (eval at compile (angular.min.js:233), :4:215) at b (angular.min.js:126) at e (angular.min.js:276) at b.$eval (angular.min.js:145) at b.$apply (angular.min.js:146) at HTMLButtonElement. (angular.min.js:276) at Sf (angular.min.js:37) at HTMLButtonElement.d (angular.min.js:37)

を与えています。 .thank in advance

答えて

0

$scope.title = 'Clicked' + clicks;あなたは$scopeを参照していましたが、clicks$scope.title = 'Clicked' + $scope.clicks;に変更しだからあなたのエラーは言う:

ReferenceError: clicks is not defined at b.$scope.someTest

$scope.someTest = function(){ 
    console.log($scope); 
    console.log("there"); 
    $scope.clicks += 1; 
    $scope.title = 'Clicked' + $scope.clicks; 
}; 
+0

タイトルが表示されない –

+0

@payalarora 'クリック数を' $ scope.clicks'に変更しましたか? –

+0

はい、それは今働いています。しかし、{{title}}を使ってアクセスするとindex.htmlに表示されません。 –

0

変数を定義していないように見える

$ scope.title = "クリック" +クリック 'をクリックされました'; < --- "$ scope.clicks"は正しいはずですか?

関連する問題