![]()
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へ。