Подтвердить что ты не робот

Ошибка Angularjs: [$ location: nobase]

y попробуйте создать простую сеть с angular Проект asp.net mvc 5 У меня есть js

var app = angular.module("app", ["ngRoute"])
    .config(function ($routeProvider, $locationProvider) {
        $routeProvider.when('/', {
            templateUrl: '/AngularJS/Templates/inicio.html',
            controller: 'bienvenidoController'
        });
        $locationProvider.html5Mode(true);
    });

и это:

app.controller("bienvenidoController", function ($scope) {

});

Вид: Компоновка:

<!DOCTYPE html>
<html>
<head>
    <meta charset="utf-8" />
    <meta name="viewport" content="width=device-width, initial-scale=1.0">
    <title>@ViewBag.Title - My ASP.NET Application</title>
</head>
<body ng-app="app">
    @RenderBody()
    <!--Librerias Angular-->
    <script src="~/Scripts/angular.min.js"></script>
    <script src="~/Scripts/angular-route.min.js"></script>

    <!---Librerias App-->
    <script src="~/AngularJS/RegistrationModule.js"></script>
    <script src="~/AngularJS/bienvenidoController.js"></script>
</body>
</html>

индекс:

<div ng-view>

</div>

и

<h1>Hola Mundo!</h1>

Ошибка:

Ошибка: [$ location: nobase]

ошибка в firebug mozilla

4b9b3361

Ответ 1

Как указано в документации AngularJs

Если вы настроите $location для использования html5Mode (history.pushState), вам нужно указать базовый URL-адрес приложения с тегом или настроить $locationProvider, чтобы не требовать базовый тег, передав объект определения с requireBase: false для $locationProvider.html5Mode()

https://docs.angularjs.org/error/$location/nobase

Вам не хватает <base href="/"> в документе или вы можете отключить проверку, установив

$locationProvider.html5Mode({
  enabled: true,
  requireBase: false
});

Ответ 2

Просто добавьте <base href="/"> в раздел <head> документа HTML и его.

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

https://docs.angularjs.org/error/ $location/nobase