我使用带Marionette和其他一些依赖项的主干编写了一个应用程序,通过bower管理:
{
"name": "admin",
"version": "0.1.1",
"main": "public/javascripts/app.js",
"dependencies": {
"lodash": "~2.4.1",
"console-polyfill": "~0.1.0",
"jquery": "~2.1.1",
"normalize-css": "~2.1.2",
"marionette": "~1.7.4",
"bootstrap": "~3.1.1",
"font-awesome": "~4.1.0",
"backbone-pageable": "~1.4.5",
"moment": "~2.5.1",
"swag": "~0.6.1",
"jquery-form": "~3.46.0",
"jquery-file-upload": "~9.5.7",
"underscore.string": "~2.3.3",
"bootstrap-switch": "~3.0.1",
"joint": "~0.9.0"
},
"overrides": {
"backbone": {
"dependencies": {
"lodash": "*",
"jquery": "*"
},
"main": "backbone.js"
},
"backbone.wreqr": {
"dependencies": {
"backbone": "*"
},
"main": "lib/amd/backbone.wreqr.js"
},
"backbone-pageable": {
"dependencies": {
"backbone": "*"
},
"main": "lib/backbone-pageable.js"
},
"jquery-file-upload": {
"dependencies": {
"jquery": "*"
},
"main": [
"js/vendor/jquery.ui.widget.js",
"js/jquery.iframe-transport.js",
"js/jquery.fileupload.js"
]
},
"underscore.string": {
"dependencies": {
"lodash": "*"
},
"main": "lib/underscore.string.js"
},
"joint": {
"dependencies": {
"lodash": "*"
},
"main": "dist/joint.clean.js"
}
},
"resolutions": {
"jquery": "~2.1.1"
}
}我想添加Joint.js(http://www.jointjs.com/),,它依赖于lodash (下划线的替代),但是我不知道如何在我的配置中替换它,因为Marionette、主干和一些其他库直接依赖下划线。因此,在load上,下划线重写了存档,并且应用程序无法正确启动。
发布于 2014-07-02 07:18:37
我已经改变了订单,并把寄存作为最新的依赖,而且它起作用了。
另外,作为一种解决方案,还有一个选项是有一个保龄球钩,如下面的答案https://stackoverflow.com/a/23289270/575338中所述
我们有类似的情况,我们的主干依赖下划线在它的
bower.json,但我们使用Lo代替它,所以Bower不必要地拉下划线为每个安装。我们有自动检查第三方许可证的遵从性,所以我们不想要任何我们不使用的东西。 我意识到这并不是真正的目的,但鲍尔的安装钩可以用来清理安装后不必要的设备(至少直到鲍尔得到你暗示的那种“不谢谢”的决心为止)。在.bowerrc中: {“目录”:"app/bower_components“、”脚本“:{ "postinstall":"rm -rf app/bower_components/下划线”}} 这是个小问题,但很管用。
https://stackoverflow.com/questions/24231184
复制相似问题