如何校准控制器功能

时间:2016-07-26 07:26:20

标签: angularjs

我在angularjs中使用ng-view

app.controller("onedetailsCtrl", ['$scope', '$rootScope', function($scope, $rootScope) {

    $rootScope.url = "Samples/one.html";

}])
app.config(['$routeProvider',
    function($routeProvider) {
        $routeProvider.
        when('/one', {
            templateUrl: 'sample/one.htm',
            controller: 'onedetailsCtrl'
        }).
        when('/two', {
            templateUrl: 'sample/two.htm',
            controller: 'deatailsController'
        }).
        otherwise({
            redirectTo: '/one'
        });
    }
]);

这里我怎样才能调用控制器功能。我也试过以下方法。

$scope.$on('$viewContentLoaded', function (event) {

$compile($('#auto'))($scope);

});
})

2 个答案:

答案 0 :(得分:0)

如果你正确地包含了角度js脚本,它将负责调用控制器功能。你不必手动调用它。如果正确写入了包含语法的everthing,angular将直接调用onedetailsCtrl,因为如果找不到任何内容,则您将路由到页面' / one '。

答案 1 :(得分:0)

route关联的控制器会在route解析后自动关联。因此,可以调用链接路由控制器函数,如下所示。

<强>路线

when('/two', {
    templateUrl: 'sample/two.htm',
    controller: 'deatailsController'
}).

<强>控制器

添加将在视图上添加的控制器$scope值。

app.controller('deatailsController', function($scope) {
    alert('Hi deatailsController!');
    // add a scope value from inside the controller
    $scope.testValue = "Hello, this is the controller scope value";
}]);

查看

在HTML模板sample/two.htm上添加以下{{testValue}},以显示从链接控制器内部绑定到scope对象的值。