AngularJS - 简单的教程不会工作

时间:2015-03-31 07:12:13

标签: javascript angularjs

我从Angular开始,遇到了应该有效的代码,但它并没有。

通过脚本标记下载并添加Angular,它是正确的,其他教程之前都有效。

我尝试过所有事情,但似乎并没有找出问题所在。从O' Reilly的书中开始学习AngularJS。

<html ng-app="nameApp">
<head>
<title>Angular Training</title>
</head>
<body ng-controller="NameCtrl">

<ul>
    <li ng-repeat="name in names"> {{ name }}
        <a href="" ng-click="removeName(name)">remove</a>
    </li>

</ul>
<form ng-submit="addName()">

    <input type="text" ng-model="enteredName">
    <input type="submit" value="add">

</form>
<script src='unzipped___AngularJS-1.3.12\angular-1.3.12\angular.min.js'></script>
<script>

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

    nameApp.controller('NameCtrl', function ($scope){


                $scope.names = ['Larry','Curly', 'Moe'];

                $scope.addName = function(){

                    $scope.names.push($scope.enteredName);
                    $scope.enteredName = '';

                };

                $scope.removeName = function(name){

                    var i = $scope.names.indexOf(name);

                    $scope.names.splice(i, 1);
                };

    });     
</script>



</body>
</html>

https://jsfiddle.net/eqk5adc1/3/

2 个答案:

答案 0 :(得分:2)

https://jsfiddle.net/5qv2e2jm/ 尝试添加此

<script src="//ajax.googleapis.com/ajax/libs/angularjs/1.3.14/angular.min.js"></script>

答案 1 :(得分:0)

根据评论,听起来您可能会遇到安全问题。出于安全原因,现代浏览器通常可以防止从本地文件系统加载外部js文件。这取决于您使用的浏览器。有关更多信息,此安全性概念称为same-origin policy

&#34;这是一个Javascript框架,所以在我看来服务器可以省略......&#34;

由于上述安全概念,这不一定是正确的。如果您使用的是Firefox,则可以使用以下步骤禁用此安全功能(尽管我只是暂时建议):

  1. 导航至about:config
  2. 在搜索栏中输入security.fileuri.strict_origin_policy
  3. 将此属性设置为false。
  4. 这些步骤应该允许在Firefox中加载本地js文件。最后,简单地设置服务器或使用廉价的云服务器(google,amazon,c9.io等)可能更容易。另一个选择可能就是像上面那样使用jsfiddle。