Skip to content

Commit ef872d3

Browse files
committed
Merge branch 'dev' into rss1102/chore/build/simplify-rollup-config
2 parents 758d217 + 6cf9b7d commit ef872d3

File tree

3 files changed

+12
-9
lines changed

3 files changed

+12
-9
lines changed

.changeset/violet-tires-stick.md

Lines changed: 5 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -0,0 +1,5 @@
1+
---
2+
'cherry-markdown': patch
3+
---
4+
5+
feat: 支持 `onClickPreview` 返回 `false` 阻止后续处理

packages/cherry-markdown/src/toolbars/PreviewerBubble.js

Lines changed: 4 additions & 7 deletions
Original file line numberDiff line numberDiff line change
@@ -289,14 +289,11 @@ export default class PreviewerBubble {
289289
* @returns
290290
*/
291291
$onClick(e) {
292-
if (this.previewer.$cherry.options.callback.onClickPreview) {
293-
// 如果有自定义的onClickPreview回调函数,则先执行
294-
const ret = this.previewer.$cherry.options.callback.onClickPreview(e);
295-
// @ts-ignore
296-
if (ret === false) {
297-
return ret;
298-
}
292+
// 如果有自定义的onClickPreview回调函数,则先执行;返回false时中断后续处理
293+
if (this.previewer.$cherry.options.callback?.onClickPreview?.(e) === false) {
294+
return false;
299295
}
296+
300297
const { target } = e;
301298
if (!(target instanceof Element)) {
302299
return;

packages/cherry-markdown/types/cherry.d.ts

Lines changed: 3 additions & 2 deletions
Original file line numberDiff line numberDiff line change
@@ -143,7 +143,8 @@ export interface _CherryOptions<T extends CherryCustomOptions = CherryCustomOpti
143143
afterAsyncRender?: CherryLifecycle;
144144
/** img 标签挂载前触发,可用于懒加载等场景 */
145145
beforeImageMounted?: (srcProp: string, src: string) => { srcProp: string; src: string };
146-
onClickPreview?: (e: MouseEvent) => void;
146+
/** 点击预览区域时触发,返回 false 可阻止后续处理 */
147+
onClickPreview?: (e: MouseEvent) => void | false;
147148
onCopyCode?: (e: ClipboardEvent, code: string) => string | false;
148149
changeString2Pinyin?: (str: string) => string;
149150
onPaste?: (
@@ -620,7 +621,7 @@ export interface CherryPreviewerOptions {
620621
/** 预览区域的DOM className */
621622
className?: string;
622623
/** 是否是移动端预览 */
623-
isMobilePreview?: boolean,
624+
isMobilePreview?: boolean;
624625
enablePreviewerBubble?: boolean;
625626
floatWhenClosePreviewer?: boolean;
626627
// 配置图片懒加载的逻辑

0 commit comments

Comments
 (0)