feat: 添加保存功能并调用父窗口回调接口

实现点击保存按钮时获取编辑器内容并通过OCDViewer.onSave回调传递给父窗口。当父窗口未提供回调接口时显示警告信息。
This commit is contained in:
hanshiyang 2025-11-19 18:50:14 +08:00
parent 4a8d53c66e
commit 8d99d268c4

View File

@ -169,6 +169,29 @@ window.onload = function () {
}
}
// 保存(调用父窗口回调)
const saveCallbackDom = document.querySelector<HTMLDivElement>('.menu-item__save')!
saveCallbackDom.onclick = function () {
try {
const editorValue = instance.command.getValue()
const content = JSON.stringify(editorValue.data, null, 2)
const parentWin: any = window.parent || window
const viewer = (parentWin && parentWin.OCDViewer) || (window as any).OCDViewer
if (viewer && typeof viewer.onSave === 'function') {
viewer.onSave(content)
console.log('已调用父窗口 OCDViewer.onSave')
} else {
console.warn('父窗口未提供 OCDViewer.onSave')
alert('未检测到父窗口的保存接口')
}
} catch (error) {
console.error('保存回调调用失败:', error)
alert('保存回调调用失败')
}
}
const undoDom = document.querySelector<HTMLDivElement>('.menu-item__undo')!
undoDom.title = `撤销(${isApple ? '⌘' : 'Ctrl'}+Z)`
undoDom.onclick = function () {