gpt4 book ai didi

AngularJs View 与 Spring : Not showing

转载 作者:行者123 更新时间:2023-11-28 22:51:15 24 4
gpt4 key购买 nike

所以我有一个简单的应用程序 AngularJs 和 Spring mvc。我有一个映射到 angularJs 页面的 Controller ,我在 jsp 页面中有这段代码:

<div ng-app="myApp" ng-controller="myCtrl">
<p>The name is <span ng-bind="person.lastName"></span></p>
{{ lastName }}
</div>

<script src="applications.js"></script>
<script src="controllers.js"></script>

应用程序.js :

var app = angular.module("myApp", []);

controllers.js :

app.controller("myCtrl", function($scope) {
$scope.firstName = "John";
$scope.lastName= "Doe";
});

当我使用 Pivotal 运行它时,它不会运行,但是当我直接在浏览器中访问该文件时,它就像一个魅力,有人愿意解释一下吗?

谢谢。编辑

WebConfig.java :

public class WebConfig extends WebMvcConfigurerAdapter {
@Override
public void addResourceHandlers(ResourceHandlerRegistry registry) {

registry.addResourceHandler("/resources/**")
.addResourceLocations("/resources/");
}

@Override
public void configureDefaultServletHandling ( DefaultServletHandlerConfigurer configurer )
{
configurer.enable();
}
}

资源文件夹:

Resources folder

网址: http://localhost:8080/gestionprojet/Project/angularjs

我的 Controller :

@RequestMapping("/angularjs")
public String getAngularJs() {
return "AngularJs";
}

最佳答案

首先,你的文件在/WEB-INF/resources下,但是你配置了spring从/resources加载静态资源。所以他们根本无法服务。配置应该是

registry.addResourceHandler("/resources/**")
.addResourceLocations("/WEB-INF/resources/");

您的网页的网址是

/gestionprojet/Project/angularjs

您的页面尝试使用相对路径加载脚本

applications.js

所以浏览器查找JS文件对应的绝对路径是

/gestionprojet/Project/applications.js

这与您选择从中提供静态资源的 URL 不匹配。假设/gestionprojet是应用程序的上下文路径,绝对URL应该是

/gestionprojet/resources/applications.js

所以JSP中的源代码应该是这样

<script src="${pageContext.request.contextPath}/resources/applications.js"></script>

关于AngularJs View 与 Spring : Not showing,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/39064474/

24 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com