Как вы импортируете недавно созданный ember addon?
Я пытаюсь создать свой первый Ember AddOn и зацикливаюсь на импорте его в проект Ember. Я создал аддон и опубликовал на GitHub, как это:
ember-cli$ ember addon test-addon
ember-cli$ cd test-addon
ember-cli/test-addon$ git remote add origin <github-url>
Затем из моего проекта я устанавливаю аддон:
test-app$ ember install <github-url>
И, наконец, попробуйте импортировать его в маршрут:
# app/rotues/index.coffee
import TestAddon from 'test-addon'
Но я получаю эту ошибку на консоли:
Uncaught Error: Could not find module `test-addon` imported from `test-app/routes/index`
Есть идеи, где я иду не так? Я вижу аддон в node_modules
каталог, но не в bower_components
, Я думаю (тм), это моя проблема, но я не уверен, что еще мне нужно сделать, чтобы настроить мой аддон.
1 ответ
ТЛ; др
cd my-addon
npm link
cd /my/project/dir
npm link my-addon
ember g my-addon # run default blueprint
Затем добавьте "my-addon": "*"
к devDependencies
раздел вашего приложения package.json
и перезапустите сервер приложений ember-cli.
Более длинный ответ
Самый простой способ добавить локально разработанный аддон - это использовать NPM link
Первый забег npm link
из корня вашего аддон-проекта, чтобы зарегистрировать его с помощью npm. Потом работает npm link <your-addon-name>
будет иметь тот же эффект, что и npm install
это
Вам все равно придется вручную добавить его в свой package.json
(требуется для ember-cli, чтобы найти его при компиляции приложения) и запустить проект по умолчанию (если он есть у вашего аддона).
Если это не работает, проверьте, что вы создали package.json
в вашем аддоне с "ember-addon"
в keywords
список (по умолчанию план аддона ember-cli должен сделать это за вас).