<base href> вызывает ошибку «[$ rootScope: infdig]»

0

Я пытаюсь отправить два параметра из first.html в second.html через url и получить значение в second.html с помощью routeParams. Я установил базовый тег как <base href="file:///D: /abhilash/node/angapp/"/> и при нажатии кнопки параметры входных текстовых полей должны быть переданы по URL-адресу.

Первый. Html:

   <!DOCTYPE html>
<html ng-app="myapp">
<head>
    <title></title>
    <base href="file:///D:/abhilash/node/angapp/"/>

</head>
<body>
<script type="text/javascript" src="angular.js"></script>
<script type="text/javascript" src="angular-route.js"></script>
<script type="text/javascript" src="controller.js"></script>

<div ng-controller="firstController">
    First name:<input type="text" ng-model="firstName"><br>
    Last name:<input type="" ng-model="lastName"><br>
    <input type="button" ng-click="loadView()" value="submit" name="">

</div>
</body>
</html>

Second.html:

    <!DOCTYPE html>
<html ng-app="myapp">
<head>
    <title></title>
<base href="file:///D:/abhilash/node/angapp/"/>
</head>
<body>

<script type="text/javascript" src="angular.js"></script>
<script type="text/javascript" src="angular-route.js"></script>
<script type="text/javascript" src="controller.js"></script>

<div ng-controller="secondController">
 {{firstName}}

</div>

</body>
</html>

Это контроллер:

(function(){
var app = angular.module('myapp', ['ngRoute']);

app.config(function($routeProvider,$locationProvider){

    $routeProvider.when('/first',{
        templateUrl:'/first.html',
        controller: 'firstController'
    })
    .when('/second/:firstName/:lastName',{
        templateUrl:'/second.html',
        controller:'secondController'
    })
    .otherwise({
        redirectTo:'/first'
    })
    $locationProvider.html5Mode(true);
})



app.controller('firstController',function($scope,$location){
        $scope.firstName="";
        $scope.lastName="";
        $scope.loadView = function()
        {
            $location.path('second/'+$scope.firstName +"/" +$scope.lastName);
            console.log($location.url());
        }
    })
    .controller('secondController',function($scope,$routeParams){
        $scope.firstName = $routeParams.firstName;
        $scope.lastName = $routeParams.lastName;
    })
}());
Теги:

1 ответ

0
Лучший ответ

проверьте этот код здесь. Если вы развертываете свое приложение в корневом контексте (например, https://myapp.com/), установите базовый URL-адрес в /:

<head>
  <base href="/">
  ...
</head>

Если вы развертываете свое приложение в подконтексте (например, https://myapp.com/subapp/), установите базовый URL-адрес в URL-адрес субконтекста:

<head>
  <base href="/subapp/">
  ...
</head>

Ещё вопросы

Сообщество Overcoder
Наверх
Меню