2017-07-16 17 views
0

単純投票アプリケーションの2つのファイルは次のとおりです。voting.htmlページを更新したときにボタンが1つ増えると、何らかの理由でボタンがカウントを増やしません。あなたの助けに感謝します。express-angular-node:投票アプリケーション

<!-- voting.html--> 
    <!DOCTYPE html> 
    <html> 
    <head> 
     <meta charset="utf-8"> 
     <title>Voting</title> 
     <script src="angular.min.js"></script> 
     <script> 
      var app = angular.module('myFirstApp', []); 

      app.controller('CounterCtrl', function($scope,$http) { 
       console.log('CounterCtrl started'); 

       // $scope.countA = 0; 
       // $scope.countB = 0; 

       // $scope.Acrease = function() { 
       // console.log('Acrease() called'); 
       // $scope.countA++; 
       // }; 
       // $scope.Bcrease = function() { 
       // console.log('Bcrease() called'); 
       // //if($scope.count>0) $scope.count--;$scope.count++; 
       // $scope.countB++; 
       // }; 

       function getItemsA() { 
        $http.get('/voteA').then(function(res) { 
         $scope.countA = res.data; 
         //$scope.countA = res.json(A); 

         console.log('/voteA: ', $scope.countA); 
        }); 
       } 

       getItemsA(); 

       function getItemsB() { 
        $http.get('/voteB').then(function(res) { 
         $scope.countB = res.data; 

         //$scope.countA = res.json(A); 
         console.log('/voteB: ', $scope.countB); 
        }); 
       } 

       getItemsB(); 

       // $scope.addItem = function() { 
       // console.log('addItem()\t newItem=', $scope.newItem); 
       // $http.get('/list/add/' + $scope.newItem).then(getItems); 
       // }; 
      }); 

     </script> 
    </head> 
    <body ng-app="myFirstApp"> 

     <div ng-controller="CounterCtrl"> 
      <p>Count of A Vote: <b>{{countA}}</b></p> 
      <p>Count of B Vote: <b>{{countB}}</b></p> 

      <input type="button" ng-click="getItemsA()" value="A"> 
      <input type="button" ng-click="getItemsB()" value="B"> 
     </div> 

    </body> 
</html> 


/***server.js***/ 
var express = require('express'); 

var app = express(); 

app.listen(3001, function() { 
    console.log('Listening on 3001'); 
}); 

// Mount the public directory at/
app.use('/', express.static('./public')); 


/******************************************** 
* This code is for voting.html 
*******************************************/ 

// initialize the votes variables 
var A = 0 ; 
var B = 0 ; 

// add the voteA 
app.get('/voteA', function(req,res) { 
    //res.json(A); 
    A++ 
    res.json(A); 

}); 

// add the voteB 
app.get('/voteB', function(req,res) { 
    //res.json(A); 
    B++ 
    res.json(B); 
}); 

答えて

0

これは角度1です。

あなたの問題は、ng-clickが範囲外の関数を呼び出すことだと思います。私はあなたがスコープ機能を作成する必要があります信じて..

$scope.getItemsA = function() { 
    $http.get('/voteA').then(function(res) { 
     $scope.countA = res.data; 
     console.log('response recieved'); 
    }); 
    }; 

はそれが役に立てば幸い

関連する問題