Warning: file_get_contents(/data/phpspider/zhask/data//catemap/1/angularjs/22.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181
AngularJS-使用控制器时停止工作_Angularjs_Angularjs Scope_Angularjs Ng Repeat_Angularjs Controller - Fatal编程技术网

AngularJS-使用控制器时停止工作

AngularJS-使用控制器时停止工作,angularjs,angularjs-scope,angularjs-ng-repeat,angularjs-controller,Angularjs,Angularjs Scope,Angularjs Ng Repeat,Angularjs Controller,所以我现在刚开始学习angularJS,在我开始使用带有ng repeat的控制器之前,测试都很顺利。当我使用它时,它似乎无法连接到控制器 我检查了一切。范围很好,angular.js库的位置也很好,但由于某些原因,列表不会显示出来。这甚至发生在一些复制粘贴示例中,因为我拿了这些示例来查看我提出的内容是否有错误,还使用了旧版本的库,同样的效果,列表中没有任何内容 <html ng-app> <head> <script src="lib/angular.min.js

所以我现在刚开始学习angularJS,在我开始使用带有ng repeat的控制器之前,测试都很顺利。当我使用它时,它似乎无法连接到控制器

我检查了一切。范围很好,angular.js库的位置也很好,但由于某些原因,列表不会显示出来。这甚至发生在一些复制粘贴示例中,因为我拿了这些示例来查看我提出的内容是否有错误,还使用了旧版本的库,同样的效果,列表中没有任何内容

<html ng-app>
<head>
<script src="lib/angular.min.js"></script>
</head>
<body>
    <div class="contrainer" ng-controller="SimpleController">
        <h3>Simple Controller Test</h3>
        <br />
        Name:
        <br />
        <input type="text" ng-model="name" />
        <ul>
            <li ng-repeat="chara in characters">
                {{chara.name}} - {{chara.location}}
            </li>
        </ul>
    </div>
    <script>
    function SimpleController($scope) {

        $scope.characters = [
            {name: 'Link', location: 'Hyrule'},
            {name: 'Pit', location: 'Angel Land'},
            {name: 'Samus', location: 'Brinstar'}
            {name: 'Takamaru', location: 'Japan'}
        ];
    }
    </script>
</body>
</html>

简单控制器测试

姓名:
  • {{chara.name}-{{chara.location}
函数SimpleController($scope){ $scope.characters=[ {name:'Link',location:'Hyrule'}, {名称:'Pit',位置:'Angel Land'}, {名称:'Samus',位置:'Brinstar'} {名称:'Takamaru',位置:'Japan'} ]; }
这里有两个错误:

1) 定义列表时语法无效。第3项后缺少逗号

  $scope.characters = [
        {name: 'Link', location: 'Hyrule'},
        {name: 'Pit', location: 'Angel Land'},
        {name: 'Samus', location: 'Brinstar'},
        {name: 'Takamaru', location: 'Japan'}
    ];
2) 您没有按所选名称引用字符,而将每个字符表示为

   <li ng-repeat="character in characters">
       {{character.name}} - {{character.location}}
   </li>
  • {{character.name}-{{character.location}

  • 将ng控制器指令放入
  • 标记中

      <ul>
            <li ng-repeat="chara in characters" ng-controller="SimpleController">
                {{chara.name}} - {{chara.location}}
            </li>
        </ul>
    
    • {{chara.name}-{{chara.location}

    控制器指令在它所在的位置很好。在这种情况下,绑定到控制器作用域时可能会丢失ng model指令。请确保查看JavaScript控制台,以便自己调试这些项(尤其是第一项)。啊,好吧,我明白了,是的,我正在改变很多东西,试图找出哪里出了问题,事情变得更糟。仍然没有解释粘贴示例中的复制,但是。我想我会自己调查的。谢谢