步骤 15:与页撤消和重做行为集成

由于 Oracle Content Management 代表定制组件存储属性,因此对这些属性的更改会自动成为页的撤消重做行为的一部分。

为了确保当用户单击撤消重做时所发生的事情是清楚的,这些“撤消事件”只应在用户实际对页执行了某些操作时发生。例如,在用户实际更改属性之前,打开定制组件的“设置”面板不应更新页内的属性。单纯地初始化“设置”面板中的属性不应导致更新事件。

如果不注意确保此行为,则可能发生意外行为。页仍将运行,但会损害用户体验。例如,可能会发生以下行为:

  • 只要打开“设置”面板,保存按钮就会变为活动状态。

  • 用户必须多次单击撤消才能看到任何效果。

  • Redo 堆栈被删除,因为组件回写了意外的更改并使用新值更新了 Redo 堆栈。

本教程中提供的“设置”面板示例代码演示了如何确保只在准备实际调用 saveData 时而不是在初始化时进行回写。除非组件本身涉及用户交互,否则在组件本身内也应同样引起注意,以免更新 customSettingsData,尽管通常不那么令人担心。

继续执行步骤 16:资产管理