如何扩展ember-cli插件?

时间:2015-02-22 04:46:52

标签: ember-cli ember-cli-addons

在我的ember-cli应用程序中,我安装了一个名为'ember-cli-selectize'的插件。查看目录结构,我可以看到它的文件位于/node_modules/ember-cli-selectize'。现在我想创建一个扩展此插件的自定义组件。我如何导入/要求它?我试过这些,但似乎没有工作:

var EmberSelectize = require('/ember-cli-selectize/app/components/ember-selectize');

import EmberSelectize from 'components/ember-selectize';

import EmberSelectize from 'node_modules/ember-cli-selectize/addon/components/ember-selectize';

import EmberSelectize from 'ember-cli-selectize/addon/components/ember-selectize';

无论如何,我总是得到'无法找到模块'的错误。我需要以某种方式导入/要求它做类似

的事情
import EmberSelectize from 'wherever/it/is';
export default EmberSelectize.extend({
  //my own customizations
})

1 个答案:

答案 0 :(得分:20)

你很接近:

import EmberSelectize from 'components/ember-selectize';

Addons名称空间本身 - 在本例中为ember-cli-selectize。因此,只需将命名空间添加到导入:

import EmberSelectizeComponent from 'ember-cli-selectize/components/ember-selectize';

然后你可以扩展:

export default EmberSelectizeComponent.extend({ });