Angular JS在MVC5中的启动和显示

时间:2014-09-13 21:05:35

标签: angularjs

所以这是我的MVC5项目视图cshtml文件,任何人都可以告诉我为什么我的模型“检查”没有显示并得到初始化

 
 <div ng-cotroller="HouseInArea_Module_Control" class="container">
 <div ng-init="getHouseInArea()">
 <label>start</label><input type="text" ng-model="HouseBasket"> {{HouseBasket}} {{Check}}
 </div>
 </div>

  <script>   
   function HouseInArea_Module_Control($scope) {
    $scope.HouseBasket = 0;
    $scope.Check = 2;
    $scope.getHouseInArea = function () {
        $scope.Check = 1;
    };
   }
    </script>

2 个答案:

答案 0 :(得分:1)

您没有正确初始化AngualarJS,并且有一个拼写错误应该是ng-controller而不是ng-cotroller。另外,我不认为你可以使用ng-init和一个函数,我相信它只适用于数据结构(并且它通常不被考虑)一个好的做法)。

鉴于所有错误,它可能会帮助您完成tutorial,但这里使用的语法

angular
 .module('myApp', [])
 .controller('HouseInArea_Module_Control', function($scope) {
    $scope.HouseBasket = 0;
    $scope.Check = 2;
    $scope.getHouseInArea = function () {
      $scope.Check = 1;
    };

    $scope.getHouseInArea(); // call the initialization function when the controller loads instead of using ng-init
}

答案 1 :(得分:0)

您可以将调用getHouseInArea移动到控制器本身,假设您希望每次调用控制器时都运行它。请注意jason提到的ng-app和ng-controller错字修正的包含。

Plunker

<!DOCTYPE html>
<html ng-app>
  <head>
    <script data-require="angular.js@1.3.0-beta.5" data-semver="1.3.0-beta.5" src="https://code.angularjs.org/1.3.0-beta.5/angular.js"></script>
    <link rel="stylesheet" href="style.css" />
    <script>
      function HouseInArea_Module_Control($scope) {
        $scope.HouseBasket = 0;
        $scope.Check = 2;
        $scope.getHouseInArea = function () {
          $scope.Check = 1;
        };
        // main
        $scope.getHouseInArea(); 
      }
    </script>
  </head>
  <body>
    <h1>Hello Plunker!</h1>
    <div ng-controller="HouseInArea_Module_Control" class="container">
      <div>
        <label>start</label><input type="text" ng-model="HouseBasket">
        {{HouseBasket}} {{Check}}
      </div>
    </div>
  </body>
</html>