如何捆绑需要多个文件才能工作的插件

时间:2017-01-26 09:43:37

标签: aurelia aurelia-cli

当我尝试将Aurelia-hammer与CLI捆绑在一起时,我遇到了问题。 该应用程序仍然从node_modules文件夹中继续拉动hammer-swipe.js,hammer-tap.js,.... 当我检查插件的AMD结构时,这些被定义为全局资源:

function configure(frameworkConfig) {
frameworkConfig.globalResources('./hammer-swipe');
frameworkConfig.globalResources('./hammer-tap');
frameworkConfig.globalResources('./hammer-press');
frameworkConfig.globalResources('./hammer-hold');}

有没有办法将这些与CLI捆绑在一起?我尝试将这些文件添加到aurelia.json中的“resources”元素,但没有成功。

1 个答案:

答案 0 :(得分:2)

插件作者应该导出这些类:(HammerPressCustomAttribute ...),以便可以正确地跟踪它们。但你可以自己虚拟导入主题作为一种解决方法:

import { HammerPressCustomAttribute } from 'aurelia-hammer/hammer-press';
import { HammerSwipeCustomAttribute } from 'aurelia-hammer/hammer-swipe';
import { HammerTapeCustomAttribute } from 'aurelia-hammer/hammer-tap';

通常你也必须这样做:

import { HammerHoldCustomAttribute } from 'aurelia-hammer/hammer-hold';

但是从hammer-hold.js导出的类名为 HammerPressCustomAttribute (oops看起来像复制粘贴问题)所以只需引用该文件,即使是不存在的类。

import { HammerHoldCustomAttribute } from 'aurelia-hammer/hammer-hold';

这应该解决你的问题(我希望)。最好在插件仓库中打开一个问题,并要求作者导出这些类(并重命名重复的类)。