修正Obsidian Excalidraw引用同一個多個block圖片相同問題
背景
之前這篇中做了在一個Excalidraw文件中引用另一個Excalidraw文件中的一部分的功能,這樣能更方便復(fù)用,原始處修改,引用處都會更新。
Obsidian Excalidraw增加引用/嵌入另一個Excalidraw文件的一部分
但發(fā)現(xiàn)引用同一個Excalidraw文件中的多個block時,所有的引用的圖片都變成一致的了(看起來就是同樣的內(nèi)容)
因此修復(fù)此問題。
修復(fù)后效果
1. 引用同一個Excalidraw文件(左)中的多個block,都可以正常顯示
2. 點擊每一個引用都可以跳轉(zhuǎn)回原處(左)
修復(fù)方式
原因是生成圖片元素的fileId都是引用文件進(jìn)行哈希后的值,而沒有因為block的不同而不同。
因此修復(fù)方式就是對于同一個文件的不同block,將fileId設(shè)置為不同(nanoid 函數(shù))
標(biāo)簽: