2015-01-21 5 views
-1

Я разработчик рельсов, новый для угловых js.Угловая js Маршрутизация

В языках среды MVC мы можем указать маршруты действия или метода в контроллере. Есть ли способ вызвать функцию контроллера в угловых js с помощью углового ui-router

+0

вы имеете в виду хост/controllerName/имяМетода маршрутизации? – Marcus

+0

Да, я хочу маршруты, такие как контроллер/метод. – user1980065

ответ

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

спасибо за ваш ответ Маркус – user1980065

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; }); 
Смежные вопросы