如何把Bootstrap和JQuery在不能上网环境中生效并用Maven来管理版本?

xiaoxiao2021-02-28  65

有的时候,我们的代码开发和部署环境有可能是上不了互联网。但是我们的代码中有引用了BootStrap或者JQuery等一些前端框架;一个办法就是把BootStrap或者JQuery的css或者JavaScript文件复制到Web项目中,并且放到一个相对路径,然后在我们的网页中加入引用,这是一个方法,但是如果以后BootStrap版本需要升级了,我们开发人员有需要新手工替换其css或者JavaScript文件;必须手工的管理器版本;那么有没有一个好的方法来进行管理呢?比如通过Maven的方式? 结果是肯定的,那就是找webjar。WebJars是将这些通用的Web前端资源打包成Java的Jar包,然后借助Maven工具对其管理,保证这些Web资源版本唯一性,升级也比较容易。关于webjars资源,有一个专门的网站http://www.webjars.org/,我们可以到这个网站上找到自己需要的资源,在自己的工程中添加入maven依赖,即可直接使用这些资源了。下面以SpringBoot项目为例子(SpringMVC项目也行),其具体步骤如下:

@添加Maven的依赖

<dependency> <groupId>org.webjars</groupId> <artifactId>bootstrap</artifactId> <version>3.3.7</version> </dependency> <dependency> <groupId>org.webjars</groupId> <artifactId>jquery</artifactId> <version>3.1.1</version> </dependency> @新建一个WebConfig的类

import org.springframework.context.annotation.Configuration; import org.springframework.web.servlet.config.annotation.EnableWebMvc; import org.springframework.web.servlet.config.annotation.ResourceHandlerRegistry; import org.springframework.web.servlet.config.annotation.WebMvcConfigurerAdapter; @Configuration @EnableWebMvc public class WebConfig extends WebMvcConfigurerAdapter { @Override public void addResourceHandlers(ResourceHandlerRegistry registry) { registry.addResourceHandler("/webjars/**").addResourceLocations("classpath:/META-INF/resources/webjars/"); } }通过上面新建的一个WebConfig类, 将对/webjars的访问重定向到/META-INF/resources/webjars/。

@在网页中,加入下面的链接

<link rel="stylesheet" href="/webjars/bootstrap/3.3.7/css/bootstrap.min.css"> <link rel="stylesheet" href="/webjars/bootstrap/3.3.7/css/bootstrap-theme.min.css"> <link rel="stylesheet" href="/webjars/bootstrap/3.3.7/js/bootstrap.min.js"> <link rel="stylesheet" href="/webjars/jquery/3.1.1/jquery.min.js"> @ 通过JQuery的例子进行测试

<!DOCTYPE HTML> <html> <head> <title>Getting Started: Spring Boot CLI + Javascript</title> <meta http-equiv="Content-Type" content="text/html; charset=UTF-8" /> <script src="/webjars/jquery/3.1.1/jquery.min.js" type="text/javascript"></script> <script src="/webjars/jquery/3.1.1/jquery.min.js" type="text/javascript"></script> <!-- <script src="https://ajax.googleapis.com/ajax/libs/jquery/3.1.1/jquery.min.js"></script> --> <script type="text/javascript"> $(document).ready(function() { $('p').animate({ fontSize: '48px' }, "slow"); }); </script> </head> <body> <p th:text="'Hello, ' + ${name} + '!'" /> </body> </html> 将会看到字体逐步变大的有JQuery渲染的动画效果。

转载请注明原文地址: https://www.6miu.com/read-67450.html

最新回复(0)