从 Angular UI 路由访问控制器

Accessing a controller from Angular UI routing

(function () {

    var app = angular.module('foo', ['bar'])
    .config(function ($stateProvider, $urlRouterProvider) {
        $stateProvider
        .state('home', {
            url:'/home/:Id',
            templateUrl: '/foo/template.thml',
            controller: 'bar'
        })

    });

})();

这是Index.html

<!DOCTYPE html>
<html xmlns="http://www.w3.org/1999/xhtml">
<head>
    <title></title>
</head>
<link rel="stylesheet" href="https://maxcdn.bootstrapcdn.com/bootstrap/3.3.1/css/bootstrap.min.css">
<body ng-app="steve">

    <div ui-view></div>
</body>
</html>


<script type="text/javascript" src="Scripts/angular.min.js"></script>
<script type="text/javascript" src="Scripts/angular-ui-router.js"></script>
<script type="text/javascript" src="app/user/BarController.js"></script>
<script type="text/javascript" src="app/App.js"></script>

和酒吧控制器

(function () {

    var app = angular.module('bar', []);
    app.controller('barCTRL', function () {
        this.mark = 'mark test';
    });


})();

我在另一个 JS 文件中创建了一个控制器,并希望通过 .state 配置部分中的控制器选项传递它。每当我这样做时,我都会得到这个 error

如有任何帮助,我们将不胜感激。非常感谢!

试试这个:

var app = angular.module('foo', ['bar'])
    .config(function ($stateProvider, $urlRouterProvider) {
        $stateProvider
        .state('home', {
            url:'/home/:Id',
            templateUrl: '/foo/template.thml',
            controller: 'barCTRL'
        })

    });