AngularJS – перенаправление страницы на другую страницу в угловых js при попытке получить параметр из url

Вот мой код контроллера

.when('/showprofile/:UserID', { templateUrl: 'resources/views/layout/showprofile.php', controller: 'ShowOrderController', }) 

Я передаю параметр по URL.

Я пытаюсь получить доступ к этой странице по URL прямо так

http://192.168.1.58/myapp/#/showprofile/8

Но это перенаправляет меня на

http://192.168.1.58/myapp/#/showprofile/:UserID

Как я могу получить значение url на мой взгляд?

Вот мой app.js, и вот мой authCtrl.js

Related of "AngularJS – перенаправление страницы на другую страницу в угловых js при попытке получить параметр из url"

Попробуйте это в своем контроллере, он вернет объект, основанный на значении url, тогда мы сможем получить уважаемое значение, подобное этому

 //it will return the object console.log($routeParams); //get the specific url value like this console.log($routeParams.UserID); or console.log($route.current.params.UserID); 

Да возможно, но вам нужно ввести $state в свой контроллер и получить

если вы используете $ state

 console.log($state.params.userID); 

Попробуй это…

  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; }); 

Правильно, у вас есть что-то вроде этого в app.js:

 .when('/showprofile/:UserID', { templateUrl: 'resources/views/layout/showprofile.php', controller: 'authCtrl', }) 

Это означает, что для этого представления назначено authCtrl. Таким образом, необходимо вводить routeParams в authCtrl (помните об инъекции зависимостей в javascript):

  app.controller('authCtrl', ['$scope','$rootScope','$routeParams','$location', '$http', 'Data', function ($scope, $rootScope, $routeParams, $location, $http, Data) { $scope.myVar = $routeParams.UserID; console.log('UserID: ',$scope.myVar); /* (...) */ }]); 

Не могли бы вы сказать мне, если это изменение регистрирует UserID в консоли? Или пусто? Если он регистрируется, все работает нормально, и вы можете использовать сервис для передачи этой переменной между различными контроллерами.