![]()
discourse-common/lib/get-ownerからgetOwnerをインポートすることは非推奨です。
例えばサービスにアクセスするには、いくつかの方法があります。
-
コンポーネント/コントローラー/ルートでは、サービスインジェクションを使用すべきです
import { service } from "@ember/service"; export default class Something extends Component { @service router; -
サービスが利用できない可能性がある場合(つまり、オプションのプラグインから提供されている場合)、
optionalServiceインジェクションがありますimport optionalService from "discourse/lib/optional-service"; export default class Something extends Component { @optionalService categoryBannerPresence; -
APIイニシャライザーでは、
api.containerにアクセスできますapiInitializer((api) => { const router = api.container.lookup("service:router"); -
既存のコードの直接的な代替として、以下を使用できます
import { getOwner } from "@ember/application"; -
…または、まだフォールバックシムが必要である場合(コンポーネント/コントローラー/ルート/ウィジェット以外のコンテキストでは)、以下を使用してください
import { getOwnerWithFallback } from "discourse-common/lib/get-owner";
このドキュメントはバージョン管理されています。変更を提案するには github で。