【问题标题】:I am getting Error: [ng:areq] Argument 'nameController' is not a function我收到错误:[ng:areq] 参数“nameController”不是函数
【发布时间】:2015-06-20 16:45:09
【问题描述】:

我收到以下错误

Error: [ng:areq] Argument 'nameController' is not a function, got undefined http://errors.angularjs.org/1.3.7/ng/areq?p0=nameController&p1=not%20a%20function%2C%20got%20undefined
    at REGEX_STRING_REGEXP (angular.js:63)
    at assertArg (angular.js:1575)
    at assertArgFn (angular.js:1585)
    at angular.js:8416
    at angular.js:7590
    at forEach (angular.js:331)
    at nodeLinkFn (angular.js:7577)
    at compositeLinkFn (angular.js:7073)
    at compositeLinkFn (angular.js:7076)
    at publicLinkFn (angular.js:6952)

我尝试将 angular 的版本更改为更低的版本,并且还使用了 CDN,但它不起作用。也试过检查语法错误。

我的函数声明正确吗?如何解决此错误。

[Plunkr][1]

http://plnkr.co/edit/HcPXYTb5p6wrsDobdGFg?p=previewenter code here

【问题讨论】:

标签: javascript angularjs angularjs-scope angularjs-controller


【解决方案1】:

在 Angular 1.3 之后,您不能使用 Angular 控制器的全局声明。要解决此问题,您需要先创建 Angular 模块,然后将 Angular 组件分配给它,例如控制器、指令、服务、工厂、过滤器等。

// Code goes here
angular.module('app',[])
.controller('nameController', nameController)
function nameController($scope) {
    $scope.firstName = 'allen';
    $scope.lastName = 'martin';
}

然后在您的 html 中使用 ng-app="app" 上创建的模块。

Demo Plunkr

【讨论】:

  • @Megh 很高兴为您提供帮助...谢谢 :-)
猜你喜欢
  • 2017-04-24
  • 1970-01-01
  • 1970-01-01
  • 1970-01-01
  • 1970-01-01
  • 2014-09-18
  • 2015-11-03
  • 2016-10-23
  • 2015-10-10
相关资源
最近更新 更多