什么是#34; shim"在systemjs?

时间:2016-07-07 08:19:59

标签: amd systemjs

对于混淆的问题,我很抱歉,我会详细说明我的问题。我目前正在Aurelia开发一个单页应用程序,我找到了一个我想试用的库:https://github.com/hootsuite/grid。我做了正常的jspm例程:

jspm install github:hootsuite/grid

成功安装并将以下内容添加到systemjs config:

map: {
    "hootsuite/grid": "github:hootsuite/grid@1.0.0",

包文件如下所示:

define(["github:hootsuite/grid@1.0.0/src/gridList.js"], function(main) {
    return main;
});

这使我可以按预期导入模块:

import * as grid from 'hootsuite/grid';

到目前为止这么好,但模块引用的js文件不是我感兴趣的(src / gridList.js),src文件夹还包含一个名为" jquery.gridlist.js的jquery插件& #34;这是我实际想要解决的文件。我设法"修复/黑客"它通过在模块文件(grid@1.0.0.js)中添加额外的AMD模块定义:

define('gridlist', ["github:hootsuite/grid@1.0.0/src/gridList.js"], function(main) {
  return main;
});

define(["github:hootsuite/grid@1.0.0/src/jquery.gridList.js", "github:hootsuite/grid@1.0.0/src/gridList.js"], function(main) {
  return main;
});

这不是一个可行的解决方案,因为jspm_modules不是源代码控制的一部分,因此必须为每个开发人员手动修补它。那么,对于这类问题,最好的办法是什么?或者我错过了哪些功能可以完全消除问题?

0 个答案:

没有答案