从AngularJS

时间:2015-07-02 16:19:08

标签: javascript angularjs

我甚至不愿意这样问,因为它感觉非常有用,但是我整个上午都在搜索教程和文档而没有任何结果。

我试图使用AngularJS起床和运行出于兴趣并且似乎无法为我工作。我有正确引用的jquery和angular的本地副本,因为我在index.html中看到我的jquery位正常工作。

请原谅我的解释中的任何误解: 我试图用一个控制器创建一个简单的ng-app来获取并输出用户名输入字段的值。我的印象是我的*应该有效。这是代码:

的index.html:

<!DOCTYPE html>
<html ng-app="indexApp">
<head>
  <script type="text/javascript" src="js/angular.min.js"></script>
  <script type="text/javascript" src ="js/jquery-1.11.3.min.js"></script>
  <script type="text/javascript" src="js/jqscripts.js"></script>
  <script type="text/javascript" src="js/indexApp.js"></script>
</head>
<body>
<div ng-controller="HelloController">
  <h1>Hello Angular</h1>
  <p>your name: <input type="text" ng-model="username" name="username"></p>

  <p>{{ show() }}</p>
 </div> 

</body>
</html>

indexApp.js

var indexApp = angular.module("myapp", []);

indexApp.controller('HelloController', ['$scope', 
  function($scope) {
    $scope.username = 'Sam';
    $scope.show = function() {return $scope.username;};
});

我觉得这是一个显而易见的东西,我很想知道,但是我喜欢至少让它运转起来!

2 个答案:

答案 0 :(得分:3)

你在这里:

var indexApp = angular.module("indexApp", []);

希望得到这个帮助。

答案 1 :(得分:2)

<html ng-app="indexApp">

这是你的问题。您提供的javascript变量名称与您在angular.module中实际注册的模块名称不同(&#39; name&#39;,依赖项)。

在HTML指令中指定ng-app时,您需要使用您提供的名称作为第一个参数。在这种情况下myapp。上面的答案可行,但您可以轻松地将HTML更改为

<html ng-app="myapp">

一切都会正常运作。