Voici mon exemple très simple où j'essaie d'implémenter un contrôleur.

{{8/2}} donne une sortie correcte, c'est-à-dire 4 mais {{message}} reste le même.

Il doit être remplacé par une valeur, par exemple First Controller

J'ai téléchargé les js angulaires depuis https://ajax.googleapis.com/ajax/libs/angularjs/1.4.2/angular.min.js

HTML

<!DOCTYPE html>
<html ng-app>

<head>
    <script src="angular.js"></script>
  <link rel="stylesheet" href="style.css" />
  <script src="script.js"></script>
</head>

<body>
  <h1>{{8/2}}</h1>
  <div ng-controller="HomeController">
      {{message}} 
  </div>
</body>
</html>

Script.js

var HomeController = function($scope) {

  $scope.message = "First Controller";

};
2
Gaurav123 14 juil. 2015 à 15:58

5 réponses

Meilleure réponse

J'ai téléchargé le js angulaire de https://ajax.googleapis.com/ajax/libs /angularjs/1.4.2/angular.min.js

Eh bien, angularjs version 1.4x ne prend pas en charge les contrôleurs de fonctions brutes à utiliser comme contrôleurs. changez la version angularjs en 1.2.x OU utilisez la syntaxe angular.module('someName').controller() pour la faire fonctionner.

Voici le même plunkr que vous avez partagé (avec angularjs 1.2.8)

Voici la plnkr avec la syntaxe angular.module ()

1
nalinc 14 juil. 2015 à 13:13

Vous utilisez une ancienne syntaxe qui n'est plus prise en charge. Au lieu de définir le contrôleur comme var. Ajoutez ng-app="app", puis créez un module

var myApp = angular.module('app',[]);

Définissez maintenant votre contrôleur -

myApp.controller("HomeController",function($scope){
  $scope.message = "Hello";
});
-1
Sid 14 juil. 2015 à 13:08

Il y a eu un problème avec votre version angulaire Si vous utilisez une ancienne version, cela fonctionne bien

<html>

<head>
  <meta charset="utf-8">
  <title>AngularJS Plunker</title>


  <script src="https://ajax.googleapis.com/ajax/libs/angularjs/1.0.7/angular.js"></script>

</head>

<body ng-app>
{{8/7}}
 <div  ng-controller="HomeController">
{{message}}
</body>
</html>
<script >
// Code goes here


 var HomeController = function($scope) {

  $scope.message = "First Controller";

};
</script>
0
Shubham Nigam 14 juil. 2015 à 13:05

Remplacez votre Script.js par ce

var ng_app = angular.module('ng_app',[]);
ng_app.controller('HomeController', ['$scope', function($scope) {
  $scope.message = "First Controller";
}]);

Modifiez ng-app dans votre html en ng-app='ng_app'

0
Mouneer 14 juil. 2015 à 13:02

Mettez à jour votre html depuis

<html ng-app>

À

<html ng-app="myApp">

Mettez à jour votre script.js vers

angular.module("myApp", []).controller("HomeController", function($scope){
    $scope.message = "First Controller";

  });
1
Nikhil Aggarwal 14 juil. 2015 à 13:05