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("1.0", (api) => { const router = api.container.lookup("service:router"); -
既存のコードの直接の代替として使用できます。
import { getOwner } from "@ember/application"; -
…または、フォールバックシムが必要な場合(コンポーネント/コントローラー/ルート/ウィジェット以外のコンテキスト)は、次を使用してください。
import { getOwnerWithFallback } from "discourse-common/lib/get-owner";
このドキュメントはバージョン管理されています - 変更はgithubで提案してください。