fix(lineNumbers): make $el property optional in LineNumbersState interface
Theme CD / Package Theme (release) Successful in 33s
Theme CD / Release (release) Successful in 17s

这个提交包含在:
rohow
2026-01-29 19:08:12 +08:00
未验证
父节点 271ffc9bfd
当前提交 69891119d8
+5 -4
查看文件
@@ -95,7 +95,7 @@ function appendElementLines(
}
interface LineNumbersState {
$el: HTMLElement;
$el?: HTMLElement;
totalLines: number;
resizeObserver: ResizeObserver | null;
init(): void;
@@ -144,12 +144,13 @@ export const lineNumbers = (): LineNumbersState => ({
},
calculateLineNumbers() {
const content = (this.$el as HTMLElement).querySelector('.post-content') as HTMLElement;
const gutter = (this.$el as HTMLElement).querySelector('.post-line-gutter') as HTMLElement;
const content = this.$el?.querySelector('.post-content') as HTMLElement;
const gutter = this.$el?.querySelector('.post-line-gutter') as HTMLElement;
if (!content || !gutter) return;
const defaultLineHeight = getDefaultLineHeight(content);
const container = content.querySelector(':scope > div') as HTMLElement || content;
const container = content.querySelector(':scope > div') || content;
const blockElements = container.querySelectorAll(':scope > *');
gutter.innerHTML = '';