首页
学习
活动
专区
圈层
工具
发布
首页
学习
活动
专区
圈层
工具
MCP广场
社区首页 >问答首页 >Bower + RequireJS多个文件

Bower + RequireJS多个文件
EN

Stack Overflow用户
提问于 2014-09-05 00:29:02
回答 1查看 336关注 0票数 1

我有一个包含两个要求模块的包包-

代码语言:javascript
运行
复制
- src
 - a.js <- this is the primary package/amd module which lists b.js as a module dependency
 - b.js

所以我们最终会得到这样的结果:

代码语言:javascript
运行
复制
 // a.js
 define(['./b'], function(b){})

问题是,当我将这个包作为单独项目的依赖项添加时,require.js配置只能成功解析模块a的路径。

维护一个包含多个rjs模块的bower包,而不需要在父项目中手动配置rjs packages密钥,最好的解决方案是什么?

我希望能够成功地从bower.json自动构建我的rjs配置,就像grunt bower和其他npm构建模块所看到的那样。

部分我觉得这是bowers的责任,因为应该有一个选项来定义一个包为多个文件。

我还怀疑可能有一种方法可以将模块连接到单个文件中,但我有点不确定如何做到这一点。

EN

回答 1

Stack Overflow用户

发布于 2014-09-05 02:04:46

我想通了。该解决方案包括将所述文件连接在一起以形成一个bower包。

代码语言:javascript
运行
复制
// This will build all 3 files into a single concatenated pkg
// 'efficient-frontier', 'everestjs', 'sem-campaign'
// nmp install -g rjs
// r.js -o require.build.js optimize=none
// Below is a file in my root named 'require.build.js'
({
    baseUrl: "",
    paths: {
      everestjs: './vendor/bower/everestjs/index',
      requirejs: './vendor/bower/requirejs/require',
      'jquery.cookie': './vendor/bower/jquery.cookie/jquery.cookie',
      'sem-campaign': 'dist/shared/sem-campaign',
      'efficient-frontier': 'dist/shared/efficient-frontier',
      jquery: './vendor/bower/jquery/jquery'
    },
    // Exclude the packages you expect to be included in the parent project
    exclude: ['jquery','jquery.cookie'],
    name: "sem-campaign",
    out: "./dist/sem-campaign.js"
})

最终的包bower是3个串联的rjs模块。本例中的包是sem-campaign。

票数 0
EN
页面原文内容由Stack Overflow提供。腾讯云小微IT领域专用引擎提供翻译支持
原文链接:

https://stackoverflow.com/questions/25670623

复制
相关文章

相似问题

领券
问题归档专栏文章快讯文章归档关键词归档开发者手册归档开发者手册 Section 归档