javascript - Angular 中的某些变量未定义错误?

标签 javascript html angularjs

我在 codepen 中使用以下代码并面临这个问题, 对于 conctact,我收到以下错误

为什么它给出的是联系人错误而不是姓名?

我该如何解决这个问题?

angular.js:13550 ReferenceError: contact is not defined
    at new <anonymous> (pen.js:8)
    at Object.invoke (angular.js:4665)
    at R.instance (angular.js:10115)
    at n (angular.js:9033)
    at g (angular.js:8397)
    at g (angular.js:8400)
    at angular.js:8277
    at angular.js:1751
    at n.$eval (angular.js:17229)
    at n.$apply (angular.js:17329)

这是js文件

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

app.controller("ctrl", ['$scope', function($scope) {
    $scope.data = [3, 4, 5, 34, 34];
    debugger;
    $scope.name = name;
    $scope.contact = contact;
    $scope.obj = {
        name: $scope.name,
        contact: $scope.contact
    };
    console.log($scope.obj);
}]);

这是我正在使用的 HTML 文件。

<body ng-app="crud">
  <div ng-controller="ctrl">       
    <div>
      <table>
        <tr ng-repeat="x in data track by $index">
          <td>{{x}}</td>
          <td>{{$index}}</td>
        </tr> 
      </table>
    </div>
  </div>
</body>

请回答这些问题

  1. 为什么联系失败而不是姓名?
  2. 联系人是数字数据,我应该给它设置什么默认值?

最佳答案

  $scope.name = name;
  $scope.contact = contact;

它的联系人抛出错误是因为您的应用程序中没有全局联系人变量,但是如果您转到控制台并键入名称.. 有一个全局变量名称等于 "" 所以它不会抛出错误。

如果您将 $scope.name 替换为任何其他变量,它会为此抛出错误。这都是因为名称是全局的,它等于空字符串。

它为 age 而不是 contact 抛出的 fiddle 。 http://fiddle.jshell.net/o6a54Lw5/1/

它为 contact 而不是 name 抛出的 fiddle 。 http://fiddle.jshell.net/o6a54Lw5/2/

现在在第二个 fiddle 中,如果您转到控制台并键入 name,您将看到它声明的 global

关于javascript - Angular 中的某些变量未定义错误?,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/38741720/

相关文章:

javascript - 如何使用 jQuery 或 JavaScript 将内联 SVG 设置为随 CSS 一起拉伸(stretch)

html - DIV 内的 CSS 表格调整大小

html - 当 body 的最小高度为 100% 时, body 的子元素不占用 100% 的空间

javascript - Angular $scope.list[index] 不更新

javascript - 没有 $scope 的 AngularFire 3 路绑定(bind)

javascript - $locationProvider.html5Mode 不是函数

javascript - jQuery slice - 最后的结果

javascript - 与使用 animateMotion 命令时一样,避免转动物体移动

c# - 如何延迟加载具有多行的标准 html 表?

html - 如何操纵其他网站数据?