Using SystemJS https://github.com/systemjs/systemjs,如何指定一个库依赖于另一个库?例如,引导程序 http://getbootstrap.com/JavaScript 库依赖于jQuery https://jquery.com/。基于SytemJS 文档 https://github.com/systemjs/systemjs/blob/master/docs/module-formats.md#shim-dependencies,我假设我会使用指定此依赖项System.config.meta
财产:
System.config({
baseUrl: './scripts',
defaultJSExtensions: true,
map: {
jquery: './lib/jquery-2.2.0.min.js',
bootstrap: './lib/bootstrap.min.js'
},
meta: {
bootstrap: {
deps: ['jquery']
}
}
});
System.import('./scripts/app.js');
但这似乎并没有什么效果。当我运行我的应用程序时,Bootstrap 库抛出一个Bootstrap's JavaScript requires jQuery
错误 - 这意味着 Bootstrap 在 jQuery 之前加载。
如何确保 jQuery 始终在 Bootstrap 之前加载?
在盲目改变之后,我偶然发现了一个似乎有效的配置。这是我的配置:
System.config({
defaultJSExtensions: true,
paths: {
jquery: './scripts/lib/jquery-2.2.0.min.js',
bootstrap: './scripts/lib/bootstrap.min.js'
},
meta: {
bootstrap: {
deps: ['jquery']
}
}
});
System.import('./scripts/app.js');
我认为关键是从map
to paths
.
EDIT
旁注:在进一步了解 SystemJS 之后,我发现它是much更容易让jspm http://jspm.io/管理我的 SystemJS 配置的艰苦工作。
本文内容由网友自发贡献,版权归原作者所有,本站不承担相应法律责任。如您发现有涉嫌抄袭侵权的内容,请联系:hwhale#tublm.com(使用前将#替换为@)