在 Spring 启动应用程序中,我获得了几个 webjars (基本上是jar包中的javascript,css和资源文件),所有这些都在maven pom文件中指定。
pom.xml
<dependencies>
...
<dependency>
<groupId>org.webjars</groupId>
<artifactId>requirejs</artifactId>
<version>2.1.16</version>
</dependency>
<dependency>
<groupId>org.webjars</groupId>
<artifactId>angularjs</artifactId>
<version>${angularjs.version}</version>
</dependency>
...
</dependencies>
Spring 启动有助于公开每个脚本路径。例如, bootstrap 可以使用
webjars/bootstrap/bootstrap-version/bootstrap.js
好的,这很酷,我现在可以在html和js文件中获取每个脚本。
事情就是这样,每个webjar都有自己的 webjars-requirejs.js 文件,带有用于模块公开以及路径和依赖项解析的配置。
我相信它的用途是使用,而不是在某些用户自定义的require.config中复制
webjars / bootstrap / version / webjars-requirejs.js
/*global requirejs */
// Ensure any request for this webjar brings in jQuery.
requirejs.config({
paths: {
"bootstrap": webjars.path("bootstrap", "js/bootstrap"),
"bootstrap-css": webjars.path("bootstrap", "css/bootstrap")
},
shim: { "bootstrap": [ "jquery" ] }
});
题
注意
webjars.path()
方法,如果我从我自己的自定义require.config()
中获取几个带有require.config()
的 webjars-requirejs.js 文件,我无法确定它的范围以及如何解决。如何在一个自定义javascript文件中操作那些 webjars-requirejs.js 文件?
最佳答案
webjars-requirejs.js
文件是传统 Artifact 。较新的RequireJS元数据位于WebJar的pom.xml
文件中。 webjars-locator
库具有一些RequireJS实用程序,可轻松使用此元数据。 WebJar Docs包含有关如何使用它的一些详细信息。