5

在 ember-cli 文档中,它描述了通过自己覆盖 app/component/[addon-name.js] 来桥接宿主应用程序中的插件。但是,文档没有明确说明如何执行此操作。

通过反复试验,我注意到通过在您的 [host app]/app/component/[name of addon.js] 中创建一个组件文件并将插件代码复制/粘贴到那里提供了一个自定义插件的场所。然而,这是一种糟糕的方法,我想我可以简单地覆盖有问题的函数......并且在某些情况下调用 this.super().functionName 以保持覆盖简单和修剪。

但是,我无法让它工作。有任何想法吗?

4

1 回答 1

8

可扩展性是插件同时具有addon/app/树的原因。在app组件树中,组件应该只是一个导入和导出,例如:

import XSelect from 'emberx-select/components/x-select';
export default XSelect;

来源:https ://github.com/thefrontside/emberx-select/blob/master/app/components/x-select.js

在这种情况下,您想在该组件中创建组件,[host app]/app/component/[name-of-addons-component.js]然后执行以下操作:

import XSelect from 'emberx-select/components/x-select';

export default XSelect.extend({
  //any overrides
});
于 2015-04-14T19:40:30.850 回答