Я изучаю AngularJS с помощью Spring Boot.Я создал проект SpringBoot и импортировал его в Eclipse, и без написания Java-кода я пытаюсь заставить внешний интерфейсный шаблон AngularJS работать с маршрутизацией.У меня есть необходимые угловые сценарии, включенные в проект, и я делаю все, как в учебниках на w3schools и на весеннем веб-сайте.Тот же код работает нормально, если я создаю очень простое приложение, использующее только HTML и JS, не используя IDE, но в Eclipse происходит сбой.
Каталог проекта в Eclipse:
-src/main/java
|-com.package
|---Application.java
|---ViewController.java
-src/main/resources
|---static
|-----app
|------app.module.js
|-----angular-route.min.js
|-----angular.min.js
|-----angular.min.js.map
|-----style.css
|---templates
|-----first.html
|-----index.html
|-----main.html
|-----second.html
Навигацияв index.html:
<body ng-app="app">
<header class="header">
<a ng-href="#/!">Main</a>
<a ng-href="#!first">First</a>
</header>
<div>
<ng-view></ng-view>
</div>
</body>
app.module.js
var app = angular.module('app', ['ngRoute']);
app.config(function($routeProvider) {
$routeProvider
.when('/', {
template: 'main.html'
})
.when("/first", {
templateUrl: "first.html"
})
.when('/second', {
templateUrl: 'second.html'
})
.otherwise({redirectTo: '/'});
});
Как и в случае первого маршрута в app.config
, он будет работать нормально в каждом случае, если я используюtemplate
вместо templateUrl
.
В случае каждого из шаблонов .html они содержат некоторый фиктивный код, например:
<p>first</p>
Когда я проверяю в dev-tools, на вкладке Network я вижу 404 какответ на запрос по шаблону.В консоли я вижу следующее сообщение об ошибке:
Error: "[$templateRequest:tpload] http://errors.angularjs.org/1.7.8/$templateRequest/tpload?p0=%2Fsrc%2Fmain%2Fresources%2Ftemplates%2Ffirst.html&p1=404&p2="
С веб-сайта AngularJS я узнал, что это означает, что с путём что-то не так.Я пытался изменить путь, как в "/first.html"
, "./first.html"
, "/templates/first.html"
, но результат был тот же.
Я не понимаю, в чем проблема.Любая помощь будет оценена.
РЕДАКТИРОВАТЬ: Я подумал, что было бы полезно добавить код для ViewController.java:
@Controller
public class ViewController {
@RequestMapping("/")
public String index() {
return "index";
}
}
Спасибо за любые предложения.