I am getting Error: [ng:areq] Argument 'nameController' is not a function

I am getting Error: [ng:areq] Argument 'nameController' is not a function

我收到以下错误

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

在 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