![]()
discourse-common/lib/get-owner에서getOwner를 가져오는 것은 더 이상 권장되지 않습니다(deprecated).
예를 들어 서비스(services)에 액세스하려면 몇 가지 방법을 사용할 수 있습니다.
-
컴포넌트/컨트롤러/루트에서는 서비스 주입을 사용해야 합니다.
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 초기화자(initializers)에서는
api.container에 액세스할 수 있습니다.apiInitializer((api) => { const router = api.container.lookup("service:router"); -
기존 코드를 직접 대체하려면 다음을 사용할 수 있습니다.
import { getOwner } from "@ember/application"; -
…또는 여전히 폴백 shim이 필요한 경우(컴포넌트/컨트롤러/루트/위젯 컨텍스트가 아닌 경우)에는 다음을 사용하세요.
import { getOwnerWithFallback } from "discourse/lib/get-owner";
이 문서는 버전 관리됩니다. github에서 변경 사항을 제안할 수 있습니다.