yycxc
This commit is contained in:
@@ -71,6 +71,27 @@
|
||||
|
||||
const isTextLike = (component) => !!(component && component.is && (component.is('text') || component.is('button') || component.is('link')));
|
||||
|
||||
const logConsoleSnapshot = (editor, component, label) => {
|
||||
try {
|
||||
const viewEl = component && component.view ? component.view.el : null;
|
||||
const modelContent = component && component.get ? String(component.get('content') || '') : '';
|
||||
const editorHtml = editor && typeof editor.getHtml === 'function' ? String(editor.getHtml() || '') : '';
|
||||
const maxLen = 1000;
|
||||
console.log(`[RTE DEBUG] ${label}`, {
|
||||
modelId: component && (component.getId ? component.getId() : component.get && component.get('id')),
|
||||
modelType: component && component.get ? component.get('type') : undefined,
|
||||
modelContentLen: modelContent.length,
|
||||
modelContent: modelContent.slice(0, maxLen),
|
||||
viewHtmlLen: viewEl ? String(viewEl.innerHTML || '').length : 0,
|
||||
viewHtml: viewEl ? String(viewEl.innerHTML || '').slice(0, maxLen) : '',
|
||||
viewOuterLen: viewEl ? String(viewEl.outerHTML || '').length : 0,
|
||||
viewOuter: viewEl ? String(viewEl.outerHTML || '').slice(0, maxLen) : '',
|
||||
editorHtmlLen: editorHtml.length,
|
||||
editorHtml: editorHtml.slice(0, maxLen),
|
||||
});
|
||||
} catch {}
|
||||
};
|
||||
|
||||
const applyContentToComponent = (editor, component, html) => {
|
||||
if (!component) return;
|
||||
const content = String(html || '');
|
||||
@@ -289,7 +310,9 @@
|
||||
const rawHtml = content.innerHTML || '';
|
||||
const html = sanitizeInlineHtml(rawHtml, content.textContent || '');
|
||||
component.__bridgeRteLastContent = html;
|
||||
logConsoleSnapshot(editor, component, 'before-save');
|
||||
applyContentToComponent(editor, component, html);
|
||||
logConsoleSnapshot(editor, component, 'after-save');
|
||||
closeModal();
|
||||
});
|
||||
|
||||
@@ -346,7 +369,9 @@
|
||||
const current = String(model.get('content') || '').trim();
|
||||
if (!current || current === '<div></div>' || current === '<div><br></div>' || current === '<div><br></div><br>') {
|
||||
model.__bridgeRteRestoring = true;
|
||||
logConsoleSnapshot(editor, model, 'restore-start');
|
||||
applyContentToComponent(editor, model, last);
|
||||
logConsoleSnapshot(editor, model, 'restore-end');
|
||||
model.__bridgeRteRestoring = false;
|
||||
}
|
||||
};
|
||||
|
||||
@@ -377,6 +377,14 @@
|
||||
try {
|
||||
modelContent = selected && selected.get ? String(selected.get('content') || '') : '';
|
||||
} catch {}
|
||||
let viewOuter = '';
|
||||
try {
|
||||
viewOuter = selectedEl ? String(selectedEl.outerHTML || '') : '';
|
||||
} catch {}
|
||||
let editorHtml = '';
|
||||
try {
|
||||
editorHtml = editor && typeof editor.getHtml === 'function' ? String(editor.getHtml() || '') : '';
|
||||
} catch {}
|
||||
try {
|
||||
console.warn('[BLUR LOG]', {
|
||||
tag: target.tagName,
|
||||
@@ -385,7 +393,12 @@
|
||||
modelType: selected && selected.get ? selected.get('type') : undefined,
|
||||
modelId: selected && (selected.getId ? selected.getId() : selected.get && selected.get('id')),
|
||||
modelContentLen: modelContent.length,
|
||||
modelContent: modelContent.slice(0, 1000),
|
||||
inSelected,
|
||||
viewOuterLen: viewOuter.length,
|
||||
viewOuter: viewOuter.slice(0, 1000),
|
||||
editorHtmlLen: editorHtml.length,
|
||||
editorHtml: editorHtml.slice(0, 1000),
|
||||
});
|
||||
} catch {}
|
||||
};
|
||||
|
||||
Reference in New Issue
Block a user