我有一个包含两个要求模块的包包-
- src
- a.js <- this is the primary package/amd module which lists b.js as a module dependency
- b.js所以我们最终会得到这样的结果:
// a.js
define(['./b'], function(b){})问题是,当我将这个包作为单独项目的依赖项添加时,require.js配置只能成功解析模块a的路径。
维护一个包含多个rjs模块的bower包,而不需要在父项目中手动配置rjs packages密钥,最好的解决方案是什么?
我希望能够成功地从bower.json自动构建我的rjs配置,就像grunt bower和其他npm构建模块所看到的那样。
部分我觉得这是bowers的责任,因为应该有一个选项来定义一个包为多个文件。
我还怀疑可能有一种方法可以将模块连接到单个文件中,但我有点不确定如何做到这一点。
发布于 2014-09-05 02:04:46
我想通了。该解决方案包括将所述文件连接在一起以形成一个bower包。
// 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。
https://stackoverflow.com/questions/25670623
复制相似问题