Вот мой файл app.js
var assetApp = angular.module('assetModule',['ngRoute']);
assetApp.config(
function ($routeProvider) {
$routeProvider
.when('/', {
templateUrl: 'HTMLTemplates/BooksList.html',
controller: 'assetController'
})
.when('/Create', {
templateUrl: 'HTMLTemplates/Create.html',
controller: 'createAssetController'
})
.otherwise({
redirectTo: '/'
});
});
assetApp.controller("assetController", ['$scope', '$http', '$window', '$routeParams', function ($scope, $http, $window, $routeParams) {
var getListOfAllAssetsUrl = "/api/Asset";
$scope.GetAllBooks = function () {
$http.get(getListOfAllAssetsUrl).then(function (response) {
$scope.books = response.data;
});
}
}
]);
index.html
<!DOCTYPE html>
<html ng-app="assetModule">
<head>
<script src="/Scripts/angular.min.js"></script>
<script src="/Scripts/angular-route.min.js"></script>
<script src="/Scripts/myApp.js"></script>
<link href="/Content/bootstrap.css" rel="stylesheet" type="text/css" />
<link href="/Content/Site.css" rel="stylesheet" type="text/css" />
<title>Routing</title>
<meta charset="utf-8"/>
</head>
<body>
<div ng-view>
</div>
</body>
</html>
BooksList.html
<div class="container">
<p>This is BookList </p>
</div>
Create.html
<div class="container">
<p>This is Create Page </p>
</div>
Страницы BooksList и Create.html помещаются в папку /HTMLTemplates, тогда как app.js помещается под /Scripts.
Когда я запустил приложение и введите этот URL-адрес http://localhost: 51227/, я ожидаю, что содержимое BooksList.html будет видимым. К сожалению, браузер, похоже, что-то делает, но через некоторое время он падает. Похоже, я заставил приложение войти в какой-то бесконечный цикл и, наконец, выскочить.
Когда я ввожу этот url http://localhost: 51227/Create, я ожидаю Create.html. содержимое должно быть видимым. К сожалению, в этом случае он не работает. Я получаю Однако я получаю ошибку сервера в '/' приложении.
Ресурс не может быть найден.
Может ли кто-нибудь предложить, как я могу исправить маршрут?
Все, что я должен был сделать, это использовать этот URL-адрес
HTTP://локальный: 51227/index.html #/
и это перенаправило бы меня в Книжный список.
Это связано с тем, что index.html - это место, где будут проходить шаблоны, поэтому мне пришлось использовать этот URL-адрес в качестве отправной точки для работы шаблонов.
Я не верю, что это проблема с вашим кодом, но moreso Angular Routing специально и как работает угловой маршрутизатор.
Вы пробовали переходить к http://localhost: 51227/index.html?
Поскольку это страница, на которой ссылаются ваши скриптовые ссылки, а угловое приложение загружается, браузер все равно должен загружать и интерпретировать это, чтобы увидеть ваш код. Затем оттуда все будет на самом деле направлено.
http://localhost: 51227/index.html #/Create будет загружать Create.html в вашу директиву ng-vew на ваш index.html