Implementace místních komponent

Instance komponenty je vytvořena objektem třídy factory komponenty.

Položka objektu třídy factory komponenty v souboru registrace komponenty je initData.componentFactory. Toto je odkaz na soubor v jazyku JavaScript, který modul RequireJS používá k načtení třídy factory komponenty. Musí vrátit objekt JavaScript, který implementuje rozhraní componentFactory.

Objekt třídy factory komponenty musí implementovat funkci customComponentFactory.createComponent(argumenty) rozhraní API, která vytváří veškeré instance komponenty.

Mezi argumenty patří tato nastavení:

  • SitesSDK: Sites SDK služby Oracle Content Management.

  • id: Jde o jedinečný identifikátor (GUID) komponenty přidané na stránku.

  • viewMode: Udává aktuální režim, ve kterém se stránka generuje. Když je stránka upravována, jedná se o režim „Úpravy“. Když je zobrazen náhled stránky, jedná se o režim „Navigace“. Za běhu, tedy po publikování webu, není tato hodnota definována. Můžete poskytnout různé implementace na základě toho, jaké funkce by měly být zpřístupněny pro jednotlivé režimy. Například odkazy by neměly být aktivní, když se stránka nachází v režimu Úpravy.

Poznámka:

Komponenta nemusí nutně používat knihovnu JQuery nebo Knockout, ale pokud chcete využívat funkce služby Oracle Content Management, jako jsou vnořené komponenty, musíte použít verzi knihovny Knockout poskytovanou službou Oracle Content Management. Tato verze knihovny Knockout nabízí rozšířenou registraci komponent a obslužné rutiny, které by pro vás nebyly jinak dostupné.

Pro samotnou komponentu je sada SDK předána, když je vytvářena instance komponenty, takže komponenta může komunikovat s životním cyklem stránky. Funkce životního cyklu stránky implementuje komponenta a jsou volány službou Oracle Content Management ke generování komponenty na stránce.

Pro implementaci komponenty jsou poskytována povinná a nepovinná rozhraní API.

Povinná rozhraní API

customComponent.render(container): Požádá komponentu, aby se vložila do poskytnutého prvku kontejneru DOM.

  • container: Jedná se o prvek kontejneru DOM pro kód HTML vlastní komponenty.

Nepovinná rozhraní API

customComponent.dispose(): K volání dojde při odebírání komponenty ze stránky. Poskytuje komponentě příležitost odebrat všechny zdroje, které již nejsou vyžadovány.