我们有一个使用Spring-MVC开发的JSP应用程序,需要在用户交互的某些部分与AngularJS集成。
我们遇到了网址问题。用于构造正确URL的JSP应用程序使用<c:url/>
,它将url添加到给定应用程序的根路径。我们当然可以在JSP中获取AnglularJS。但是,AngularJS在内部使用了许多相对URL,最终找不到它们,因为它们缺少Web应用程序的根路径。可以做些什么呢?
AngularJS使用相对网址的示例:
var app = angular.module("app", ['ngDragDrop', "ngRoute", "editor", "popup", "history", "state", "launch"])
.config(function($routeProvider) {
$routeProvider.otherwise({
templateUrl: "res/views/actioner-view.html"
});
});
答案 0 :(得分:1)
在JSP中,在加载脚本之前,添加以下行:
var CONTEXT_PATH = '${pageContext.request.contextPath}';
无论您在JavaScript代码中定义网址,请使用
templateUrl: CONTEXT_PATH + 'res/views/actioner-view.html'