Az Oracle Content Management összetevőinek megvalósításához a KnockoutJS összetevő-architektúrát használja a rendszer. Ez azt jelenti, hogy ha a KnockoutJS rendszert használja összetevőinek megvalósításához, az Oracle Content Management beépített összetevőit közvetlenül belefoglalhatja sablonjába.
Megjegyzés:
Mivel az Oracle Content Management beépített összetevői csak az Oracle Content Management oldalán futhatnak, nem használhat beágyazott összetevőket, ha összetevője beágyazott keretben van megjelenítve.Beágyazott összetevők hasznosítása:
Valósítsa meg összetevőjét a KnockoutJS használatával.
A RequireJS segítségével vegye fel összetevőjét, és használja ugyanazt a "ko"
Knockout példányváltozót, amelyet az Oracle Content Management létrehozott.
Ez azért szükséges, mert az Oracle Content Management összetevőkkel terjeszti ki a Knockout rendszert, és ezek az összetevők nem lesznek elérhetők, ha a KnockoutJS saját példányát használja.
Ebben a lépésben áttekintheti, hogy az Oracle Content Management kép, bekezdés és cím összetevője hogyan lesz megjelenítve egyéni összetevőjében. A felhasználók közvetlenül szerkeszthetik ezt az oldalon belül, és hozzáférnek a beágyazott összetevőhöz tartozó Beállítások panelhez.
Az összetevők sablonba való befoglalásának megtekintéséhez szerkessze a render.js
fájlt, és nézze meg a sampleComponentTemplate
objektumot. A megjelenített alapértelmezett szakasz látható itt:
'<!-- ko if: alignImage() !== \'right\' -->' + '<div style="display:flex;">' + '<div data-bind="attr: {style: imageStyle, \'data-layout\': alignImage()}, click: imageClicked">' + '<scs-image params="{ scsComponent: { \'renderMode\': mode, \'parentId\': id, \'id\': \'imageId\', \'data\': imageData } }"></scs-image>' + '</div>' + '<div data-bind="attr: {style: paragraphStyle}">' + '<scs-title params="{ scsComponent: { \'renderMode\': mode, \'parentId\': id, \'id\': \'titleId\', \'data\': titleData } }"></scs-title>' + '<scs-paragraph params="{ scsComponent: { \'renderMode\': mode, \'parentId\': id, \'id\': \'paragraphId\', \'data\': paragraphData } }"></scs-paragraph>' + '</div>' + '</div>' + '<!-- /ko -->' +
Az <scs-image>
beágyazott összetevőnél a következő bejegyzés szerepel:
'<scs-image params="{ scsComponent: { \'renderMode\': mode, \'parentId\': id, \'id\': \'imageId\', \'data\': imageData }}"></scs-image>' +
params
sablonkötésnek átadott scsComponent
adatok a következőket tartalmazzák:
renderMode
: Ez a Site Builder aktuális üzemmódjára hivatkozik. Ezt funkciók engedélyezésére és letiltására használhatja. Például amikor az <scs-title>
összetevő használja, ez felveszi a rich text szerkesztőt az edit
üzemmódban való futtatáskor.
parentId
: Ez azért szükséges, hogy az Oracle Content Management összetevője tudja, hogy beágyazott összetevőként van megjelenítve. A beágyazott összetevőn végrehajtott valamennyi módosítást az egyéni összetevő adatainál menti a rendszer.
id
: A beágyazott összetevőhöz tartozó egyedi azonosító. Ez később az egyéni összetevő azonosítójának névterébe fog tartozni.
data
: A beágyazott összetevőhöz tartozó kezdeti adatok. Ha az összetevőt a későbbiekben nem módosítják, ezekkel az adatokkal lesz megjelenítve.
A hivatkozott id
és mode
értékét a SampleComponentViewModel
objektumban adja a rendszer egyéni összetevőjének, ezért nem szükséges módosítania az objektumot a következő értékekhez:
// Store the args self.mode = args.viewMode; self.id = args.id;
Az összes többi támogatott beágyazott összetevőnél, ilyen az <scs-image>, <scs-title> és az <scs-button>
, a szintaxis az <scs-paragraph>
mintáját követi.
A 10. lépéshez tartozó eredmények ellenőrzése
Frissítse az oldalt webhelyén, így a Site Builder át tudja venni az összetevő módosításait.
Jelenítse meg az oldalt szerkesztési módban.
Húzza át összetevőjét az oldalra.
Kattintson összetevőjében az As a page author, you can edit. . .
szövegre, és módosítsa a leírást a rich text szerkesztő használatával.
A módosítás megtekintéséhez váltson előnézeti módba.
Térjen vissza szerkesztési módba.
Nyissa meg az összetevőhöz tartozó Beállítások panelt.
Kattintson az Összetevők hivatkozásra, amely most megjelenik, mivel észlelte a beágyazott összetevőt.
Kattintson a Bekezdés elemre, amely a megtalált beágyazott összetevő.
Ekkor összetevőjén belül módosíthatja a bekezdés összetevőhöz tartozó tulajdonságokat.
Megjegyzés:
Az összetevő példányának létrehozásáig az Oracle Content Management nem tud a sablonban esetleg létező beágyazott összetevőkről. Az Oracle Content Management szolgáltatást úgy tájékoztathatja a rejtett beágyazott összetevőkről, hogy aSitesSDK.setProperty('visibleNestedComponents', []);
API felületet használja. A rejtett beágyazott összetevők alapértelmezés szerinti megjelenítéséhez módosítania kell a "nestedComponents": []
tömböt az összetevő regisztrációjában.A következő témakör: 11. lépés: Különböző elrendezések támogatása.