2016-03-01 5 views
1

Как вам нужно работать в Ember-аддоне, чтобы включить пакеты-баннеры при установке аддона.Включить компонент bower в Ember Addon

1) Я установил пакет Бауэр я хочу включить в мой аддон с bower instal packagename --save

2), то в моем аддон, в корне, отредактированы index.js, чтобы выглядеть следующим образом:

/* jshint node: true */ 
'use strict'; 

module.exports = { 
    name: 'my-ember-component', 
    included: function(app) { 
    this._super.included(app); 

    if(app.import){ 
     app.import(app.bowerDirectory + '/path-to-package/package.js'); 
    } 
    } 
}; 

Однако, когда я пытаюсь запустить свое приложение, где установлен аддон, я получаю сообщение ENOENT: no such file or directory, stat '/my-ember-application/tmp/source_map_concat-input_base_path-bWTPoVC9.tmp/0/bower_components/path-to-package/package.js

Я хочу, y addon in.

Примечание: Я использую npm link для отладки моего аддона, возможно, это может быть источником проблемы?

+0

Я считаю, что это артефакт местного развития, как вы говорите – Dhaulagiri

ответ

2

Обычно компоненты дополнительного оборудования аддона добавляются к потребляющему проекту в течение ember install addon.

Но так как вы делаете локальную разработку и используете связь npm. Вам нужно имитировать это. Вы можете сделать это с помощью:

ember generate your-addon-name 

Объяснение.

Ознакомьтесь с документами на default blueprints в документах ember cli.

Шаблонный с тем же именем, что и аддона (если явно не изменилось, см.выше) будет автоматически запускаться после установки (в развития, необходимо вручную запустить после соединения). Это то, где вы можете связать зависящие друг от друга зависимости вашего компьютера в клиентском приложении, чтобы они действительно установили .

Короче говоря, вам необходимо создать проект по умолчанию для вашего приложения и добавить там зависимость бауэр.

Создать файл:

//blueprints/your-addon-name/index.js 
module.exports = { 
    normalizeEntityName: function() {}, // no-op since we're just adding dependencies 

    afterInstall: function() { 
    return this.addBowerPackageToProject('BOWER PACKAGE NAME'); // is a promise 
    } 
}; 

Тогда при запуске плана по умолчанию с

ember generate your-addon-name 
+0

В то же время, я нашел но не смог добавить его к моему собственному вопросу. Ты на правильном пути. Я не добавлял свой пакет колокольчиков в свой проект в моем проекте. И вы говорите, что план не запускается автоматически при локальной разработке, и вам нужно запустить его вручную. Пожалуйста, добавьте его в свой ответ, и я отметю как правильно. – pjcarly

+0

Действительно, я не поймал первый раз, когда у вас не было плана по умолчанию. Добавлена ​​информация и ссылка на ember cli docs! – Casey

 Смежные вопросы

  • Нет связанных вопросов^_^