Angular:为什么我的控制器没有被执行

时间:2016-08-26 09:21:46

标签: angularjs controller execute

这是我的代码: -

  <html>
  <head></head>
  <body ng-app="app">
    <div class="container">
      <label>Type d'objets à importer
        <select>
          <option value="categorie">Catégories de mot clé</option>
          <option value="categorie">Mots clés</option>
        </select>
      </label>
      <label>Déposer un array au format JSON<br>
        <textarea ng-model="array"></textarea>
      </label>
      <button ng-click="import()">Importer</button>
    </div>
    <script src="/csp/libraries/angular/angular.min.js"></script>
    <script language="javascript">

    (function() {

        angular.module('app', [])
            .controller('MainController', MainController);

        console.log('writed in the console');
        function MainController($scope) {
            console.log('never writed in the console');
            $scope.array = [];

            $scope.import = function() {
                console.log($scope.array);
            };
        }
      })();
   </script>
  </body>
</html>

我在加载时写了一些东西,但控制器内部的声音从未被加载 我没有控制台中的任何错误,并且角度已正确加载。

2 个答案:

答案 0 :(得分:3)

您尚未在html中定义控制器。

<div ng-controller="MainController"></div>

答案 1 :(得分:2)

ng-controller中呼叫您需要的控制器名称,
在您要呼叫控制器的ng-controller='MainController'上添加 <div> ,或者您必须应用业务逻辑的位置。
但是,应用程序启动后请始终致电ng-controller

<body ng-app="app">
   <div ng-controller="MainController" class="container">

     // write HTML code

   </div>
</body>