Предположим, мы находимся в ловушке included
, вы можете проверить this.isAddon()
, чтобы определить, где вы сейчас находитесь. Скажем, если вы сейчас находитесь в приложении ember, вы можете вызвать path.dirname(require.resolve('ADDON_NAME/package.json'))
, чтобы получить абсолютный путь к вашему дополнению ember.
Следует отметить, что this.isAddon()
может не являться публичным API (хотя он достаточно стабилен, но все еще не указан в API doc). Если вы обеспокоены этим, вы можете использовать this.parent.name()
для достижения той же цели, когда вы запускаете с фиктивным приложением, this.parent.name()
всегда возвращает dummy
.
Кстати, this.parent
- то же самое, что и app.project
, где app
- первый аргумент included
hook.