$ location не меняет путь в AngularJS - PullRequest
0 голосов
/ 08 ноября 2018

Я новичок в AngularJS, и у меня возникла проблема с перемещением одной страницы на другую, и я должен передать параметры с главной страницы на страницу сведений, я следовал приведенному ниже коду, но он не работает, и я получаю ошибку ReferenceError: $location is not defined at a.$scope.moveToOthers (showOrders.js:4)

Может кто-нибудь помочь мне, пожалуйста

app.js:

var sampleApp = angular.module('sampleApp', ["ngRoute"]);
sampleApp.config(['$routeProvider',
    function ($routeProvider) {
        $routeProvider.

            when('/AddNewOrder', {
                templateUrl: 'templates/add_orders.html',
                controller: 'AddOrderController'
            }).

            when('/ShowOrders', {
                templateUrl: 'templates/show_orders.html',
                controller: 'ShowOrdersController'
            }).

            when('/ExpandOrders', {
                templateUrl: 'templates/expand_orders.html',
                controller: 'ExpandOrderController'
            }).

            when('/OthersPage:id?', {
                templateUrl: 'templates/others_page.html',
                controller: 'OthersPageController'
            }).

            otherwise({
                redirectTo: '/AddNewOrder'
            });

    }]);

show_orders.html

<!DOCTYPE html>
<html>
<head>
<meta charset="ISO-8859-1">
<title>Insert title here</title>
<script src="controllers/othersPage.js"></script>
<title>AngularJS Routing example</title>
</head>
<body>
<h1>Show orders</h1>
<button ng-click="moveToOthers()" type="button" class="btn btn-default" style="margin:10px 0px 10px 0px;">Others Page</button>
</body>
</html>

showOrders.js:

sampleApp.controller('ShowOrdersController', function ($scope, $location) {
    $scope.msg = 'This is Show orders screen123';
    $scope.moveToOthers = function () {
        $location.path('/others_page/100')
    }
});

1 Ответ

0 голосов
/ 08 ноября 2018

Я предлагаю это:

  1. Исправьте ваш роутер: измените '/OthersPage:id?' на '/OthersPage/:id'
  2. В элементе <button> не используйте функцию для изменения вашего пути. Вместо этого используйте ng-href, например: <a ng-href="/OthersPage/100" type="button" class="btn btn-default" style="margin:10px 0px 10px 0px;">Others Page</a>
Добро пожаловать на сайт PullRequest, где вы можете задавать вопросы и получать ответы от других членов сообщества.
...