【问题标题】:How to resolve multiple RequireJS config files from Webjars如何从 Webjar 中解析多个 RequireJS 配置文件
【发布时间】:2015-03-07 19:35:20
【问题描述】:

spring-boot 应用程序中,我获得了几个 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-boot 通过公开每个脚本路径来提供帮助。例如 bootstrap 可以使用

webjars/bootstrap/bootstrap-version/bootstrap.js

好的,这很酷,我现在可以在我的 html 和 js 文件中获取每个脚本。

但事情是这样的,每个 webjars 都有自己的 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() 方法,我无法确定它的范围以及如果我从我自己的自定义@987654326 获得几个带有require.config()webjars-requirejs.js 文件,它将如何解决@.
如何在一个自定义 javascript 文件中操作那些 webjars-requirejs.js 文件?

【问题讨论】:

    标签: javascript spring requirejs webjars


    【解决方案1】:

    webjars-requirejs.js 文件是遗留工件。较新的 RequireJS 元数据位于 WebJar 的 pom.xml 文件中。 webjars-locator 库有一些 RequireJS 实用程序,可以轻松使用此元数据。 WebJar Docs 包含有关如何使用它的一些详细信息。

    【讨论】:

    • 谢谢@James,答案直接来自源代码:) 我会查看webjars-locator 看看它提供了什么,即使没有一些更高级的实用工具,到目前为止这已经非常了不起了。在spring boot 项目中使用mavengradle 进行设置后,我将编写一些教程,以提供另一个特定于使用的示例。杰出的工作人员...
    • 谢谢!希望您能为文档做出任何贡献。如果有更多可用的示例应用程序和指南,那就太好了。
    • 我很乐意贡献,会尽快与您联系。
    猜你喜欢
    • 2017-11-16
    • 1970-01-01
    • 2011-10-12
    • 1970-01-01
    • 2012-02-16
    • 2020-06-05
    • 1970-01-01
    • 1970-01-01
    • 2011-03-22
    相关资源
    最近更新 更多