Der Import von getOwner aus discourse-common/lib/get-owner ist veraltet.
Um z. B. auf Dienste zuzugreifen, stehen Ihnen einige Methoden zur Verfügung.
-
In Komponenten/Controllern/Routen sollten Sie Service-Injections verwenden
import { service } from "@ember/service"; export default class Something extends Component { @service router; -
In Fällen, in denen ein Dienst nicht verfügbar sein kann (d. h. er stammt aus einem optionalen Plugin), gibt es eine
optionalService-Injectionimport optionalService from "discourse/lib/optional-service"; export default class Something extends Component { @optionalService categoryBannerPresence; -
In API-Initializern haben Sie Zugriff auf
api.containerapiInitializer("1.0", (api) => { const router = api.container.lookup("service:router"); -
Und als direkter Ersatz für vorhandenen Code können Sie verwenden
import { getOwner } from "@ember/application"; -
…oder wenn Sie immer noch den Fallback-Shim benötigen (in einem Kontext, der keine Komponente/Controller/Route/Widget ist), verwenden Sie
import { getOwnerWithFallback } from "discourse-common/lib/get-owner";
Dieses Dokument unterliegt der Versionskontrolle – schlagen Sie Änderungen auf GitHub vor.