我们的应用程序将所有第三方依赖项(jquery,react等)放入供应商包中。应用程序本身有时嵌入到共享相同依赖项的另一个requirejs应用程序中。所以我们想分享这个包。
根据文档,我们尝试将libraryTarget
设置为var
和amd
。我们还尝试使用library
命名库。但是,当我们在另一个应用程序中requirejs
捆绑包时,生成的对象没有供应商库。我误解了图书馆包装是如何运作的吗?
/* requirejs app */
require(['vendor.bundle.js'], function(vendor) {
console.log(vendor)
console.log(libraryName)
}
实际输出(这些都不是除转换器之外的供应商库)
Converter: (e)
extension: (e,t)
extensions: Object
getAllExtensions: ()
getDefaultOptions: (e)
getOption: (e)
getOptions: ()
helper: Object
removeExtension: (e)
resetExtensions: ()
resetOptions: ()
setFlavor: (e)
setOption: (e,t)
subParser: (e,t)
validateExtension: (e)
所需输出:包含所有第三方库的对象:
{
React: //...,
Baconjs: //.....
}