開發和頁面差異 developing-and-page-diff
功能概述 feature-overview
內容建立是一個反複的過程。 以高效率撰寫需要能夠檢視反複專案之間的變更。 檢視一個頁面版本然後檢視另一個頁面版本會效率低下,並容易發生錯誤。 作者希望能夠並排比較目前頁面與先前版本,並醒目提示差異。
頁面差異可讓使用者將目前頁面與啟動項、舊版等專案進行比較。 如需此使用者功能的詳細資訊,請參閱頁面差異。
作業詳細資料 operation-details
比較頁面的版本時,使用者想要比較的先前版本會由AEM在背景重新建立,以方便差異比較。 必須如此才能呈現內容以並排比較。
此重新建立操作由AEM內部完成,對使用者而言是透明的,不需要任何干涉。 但是,管理員檢視存放庫(例如,在CRXDE Lite中)時,會在內容結構中看到這些重新建立的版本。
比較內容時,系統會在下列位置重新建立整個樹狀結構,一直到要比較的頁面為止:
/tmp/versionhistory/
清除工作會自動執行,以清除此暫存內容。
權限 permissions
先前,在傳統UI中,必須進行特殊的開發考量以促進AEM差異(例如使用cq:text
標籤庫,或自訂將DiffService
OSGi服務整合到元件中)。 新的diff功能不再需要此專案,因為差異是透過DOM比較在使用者端發生。
不過,開發人員必須考慮一些限制。
-
此功能使用的CSS類別未與AEM產品建立名稱空間。 如果頁面上包含其他相同名稱的自訂CSS類別或協力廠商CSS類別,差異的顯示可能會受到影響。
html-added
html-removed
cq-component-added
cq-component-removed
cq-component-moved
cq-component-changed
-
由於diff是使用者端並在頁面載入時執行,因此使用者端diff服務執行後對DOM所做的任何調整都不會計算在內。 這可能會影響
- 使用AJAX來包含內容的元件
- 單頁應用程式
- 在使用者互動時操控DOM的JavaScript型元件。
NOTE
頁面差異比較僅適用於具有有效cq:editConfig節點的元件。
recommendation-more-help
19ffd973-7af2-44d0-84b5-d547b0dffee2