2015-01-21 62 views
-1

我是一位角向js的rails開發人員。Angular js Routing

在MVC框架語言中,我們可以爲控制器中的動作或方法指定路由。 有沒有什麼辦法可以使用角度UI路由器在角度js中調用控制器的功能

+0

你的意思是主機/ controllerName /方法名路由? – Marcus 2015-01-21 08:06:20

+0

是的,我想要像控制器/方法的路線。 – user1980065 2015-01-21 08:23:33

回答

0

那麼,您將不會通過指定正確的路由自動啓動方法,但您可以自行管理它,如下所示:

angular('app').config(function($routeProvider){ 
      $routeProvider.when("/ctrl", 
        { 
         action: "ctrl.default" 
        } 
       ); 
}); 


angular('app').controller('ctrl', function($route) { 
    render = function() { 
     $scope.action = $route.current.action.split("."); 
    } 

    $scope.$on("$routeChangeSuccess",function($currentRoute, $previousRoute){ 

     render(); 

    }); 

基本上,事件被解僱每次在路徑要素被改變時,同時在render()方法,你可以在$scope.action

的情況下切換爲提供的參數正確的操作工作,正如你所看到的,變量action是一個,持有傳遞給控制器​​的信息。

上面的代碼是不寫的測試,所以要小心:對

+0

感謝您的回覆Marcus – user1980065 2015-01-21 10:08:23

0
var sampleApp = angular.module('sampleApp', []); 
sampleApp.config(['$routeProvider', function($routeProvider) { $routeProvider. when('/ShowOrder/:orderId', { templateUrl: 'templates/show_order.html', controller: 'ShowOrderController' }); }]); 
sampleApp.controller('ShowOrderController', function($scope, $routeParams) { $scope.order_id = $routeParams.orderId; });