Skip to content

MNNote

MNNote是用于操作卡片的核心对象,提供卡片读取、定位、修改、内容提取和关联管理等功能,访问和管理卡片数据。

new MNNote(note:MNNote|MbBookNote|string|NoteConfig,alert?:boolean)

构造一个新的MNNote实例。

参数名类型必填说明
noteMNNote|MbBookNote|string|NoteConfig可传MNNoteMbBookNote、卡片id、marginnote4app://note/...链接、current等关键字、或建卡配置对象。
alertboolean保留参数,当前实现中不会改变返回逻辑。
字段名类型说明
noteCacheRecord<string,MNNote>缓存已包装过的卡片实例,避免重复创建。
static getNoteFromCache(noteId:string):MNNote|undefined

noteId直接读缓存。

参数名类型必填说明
noteIdstring目标卡片id。
  • 类型:MNNote|undefined
  • 语义:返回缓存中的MNNote实例或undefined。
static noteFromId(noteId:string):MNNote|undefined

按id获取MNNote,命中缓存就复用,未命中就创建并写回缓存。

参数名类型必填说明
noteIdstring目标卡片id。
  • 类型:MNNote|undefined
  • 语义:返回MNNote实例或undefined。
static noteFromNote(note:MbBookNote):MNNote|undefined

把原生MbBookNote包装成MNNote并接入缓存。

参数名类型必填说明
noteMbBookNote原生卡片对象。
  • 类型:MNNote|undefined
  • 语义:返回MNNote实例或undefined。
字段名类型说明
noteMbBookNote当前包装对象对应的原生卡片。
noteIdstring当前卡片id。
idstringnoteId别名。
type`“textNote""blankTextNote"
isBlankNoteboolean判断是否为空白摘录卡。
notebookIdstring当前卡片所在学习集id。
notebookMNNotebook当前卡片所在学习集包装对象。
originNoteId`stringundefined`
originNote`MNNoteundefined`
groupNoteId`stringundefined`
groupNote`MNNoteundefined`
groupModenumber返回分组模式值。
mindmapBranchCloseboolean返回脑图分支折叠状态。
childNotesMNNote[]返回直接子卡数组。
parentNote`MNNoteundefined`
parentNoteId`stringundefined`
childMindMap`MNNoteundefined`
descendantNodes{descendant:MNNote[],treeIndex:number[][]}返回所有后代卡及其树路径索引。
ancestorNodesMNNote[]返回从当前卡向上的祖先链。
brotherNotesMNNote[]返回同级卡片数组。
indexInBrotherNotesnumber返回当前卡在同级中的索引。
titlesstring[]读写分号分隔的标题集合,写入时会去重。
titlestring主标题视图,读取时会去掉{{...}}来源标题。
noteTitlestring原始标题字符串,不过滤{{...}}片段。
titlesFromMarkdownstring[]返回标题中{{...}}片段。
titlesWithoutMarkdownSourcestring[]返回去掉{{...}}后的标题集合。
excerpt{type:string,text?:string,textFirst?:boolean,isBlankNote?:boolean,imageHash?:string,audioHash?:string,videoHash?:string,pageNos?:number[]}返回摘录聚合信息,包含类型、文本、媒体hash和页码。
_excerptCache`{info:{type:string,text?:string,textFirst?:boolean,isBlankNote?:boolean,imageHash?:string,audioHash?:string,videoHash?:string,pageNos?:number},refreshTime:number}undefined`
excerptType`“text""image"
isOCRboolean判断当前摘录是否按OCR文本优先处理。
textFirstboolean控制摘录以文本优先还是图片优先。
excerptText`stringundefined`
excerptTextMarkdown`booleanundefined`
mainExcerptTextstring带空字符串兜底的摘录文本访问入口。
excerptPic`ExcerptPicundefined`
excerptPicData`NSDataundefined`
excerptVideoData`NSDataundefined`
excerptAudioData`NSDataundefined`
image`UIImageundefined`
imageId`stringundefined`
imageData`NSDataundefined`
images`UIImage[]undefined`
imageDatas`NSData[]undefined`
hasVideoboolean判断是否包含视频摘录。
videoId`stringundefined`
videoData`NSDataundefined`
commentsNoteComment[]返回原生评论数组。
MNCommentsMNComment[]返回评论包装对象数组。
tagsstring[]读取标签名数组,写入时会覆盖旧标签。
linkedNotesobject[]返回卡片链接关系集合。
summaryLinksobject[]返回摘要链接集合。
mediaListobject[]返回媒体列表。
excerptsTextPic{ocr:string[],html:string[],md:string[]}聚合当前卡及其链接卡的摘录文本和图片转写结果。
commentsTextPic{html:string[],md:string[]}聚合评论里的文本和绘图内容。
excerptsTextstring[]收集当前卡和链接卡里的摘录文本。
commentsTextstring[]收集评论文本,过滤标签和卡片链接。
allTextPic{html:string,ocr:string,md:string}返回整卡文本和图片信息的拼接结果。
allTextstring返回整卡纯文本长字符串。
excerptsCommentsTextstring[]返回摘录与评论文本数组,过滤链接和标签噪音。
colorIndexnumber读写卡片颜色索引。
colorstring用颜色名读写卡片颜色。
getNoteColorHexstring返回当前颜色的Hex值。
colorHexstringgetNoteColorHex别名。
fillIndexnumber读写填充样式索引。
createDatestring创建时间字符串。
createDateNumbernumber创建时间时间戳。
modifiedDatestring最后修改时间字符串。
modifiedDateNumbernumber最后修改时间时间戳。
noteURLstring返回卡片链接。
urlstringnoteURL别名。
notesMNNote[]返回当前卡与它的链接卡集合。
docMd5`stringundefined`
startPage`numberundefined`
endPage`numberundefined`
pageNosnumber[]返回当前卡及关联卡涉及的页码集合。
documentMNDocument返回当前卡关联文档对象。
existboolean判断底层卡片是否仍存在。
getExcerptInfo():object|undefined

返回摘录细节对象,包括类型、hash、选区、页码等。

  • 类型:object|undefined
  • 语义:返回摘录细节对象或undefined。
open():void

在MarginNote中打开当前卡片。

  • 类型:void
  • 语义:无返回值。
appendExcerptText(text:string):void

在摘录正文末尾追加文本。

参数名类型必填说明
textstring要追加的文本。
  • 类型:void
  • 语义:无返回值。
prependExcerptText(text:string):void

在摘录正文开头插入文本。

参数名类型必填说明
textstring要插入的文本。
  • 类型:void
  • 语义:无返回值。
copy():void

复制当前卡的关键信息到剪贴板。

  • 类型:void
  • 语义:无返回值。
config(opt?:{first?:boolean}):object

按配置导出卡片对象。

参数名类型必填说明
opt{first?:boolean}导出选项,默认{first:true}
  • 类型:object
  • 语义:返回卡片配置对象。
realGroupNoteIdForTopicId(nodebookid?:string):string

返回当前卡在指定学习集下的真实组卡id。

参数名类型必填说明
nodebookidstring目标学习集id,默认当前学习集。
  • 类型:string
  • 语义:返回真实组卡id。
realGroupNoteForTopicId(nodebookid?:string):MNNote

返回指定学习集下的真实组卡对象。

参数名类型必填说明
nodebookidstring目标学习集id,默认当前学习集。
  • 类型:MNNote
  • 语义:返回真实组卡对象。
noteInDocForTopicId(nodebookid?:string):MNNote

按学习集映射返回对应卡片对象。

参数名类型必填说明
nodebookidstring目标学习集id,默认当前学习集。
  • 类型:MNNote
  • 语义:返回映射后的卡片对象。
processMarkdownBase64Images():void

处理正文里Base64图片引用。

  • 类型:void
  • 语义:无返回值。
allNoteText():string

返回标题、正文、评论拼接文本,不含链接和标签。

  • 类型:string
  • 语义:返回拼接后的文本。
setTitle(title:string):MNNote

设置标题并返回自身,便于链式调用。

参数名类型必填说明
titlestring新标题。
  • 类型:MNNote
  • 语义:返回自身,便于链式调用。
setTtiles(titles:string[]):MNNote

设置多标题并返回自身。

参数名类型必填说明
titlesstring[]标题数组。
  • 类型:MNNote
  • 语义:返回自身,便于链式调用。
setTitleAndUpdateFromMarkdown(title:string|string[]):MNNote

先设置标题,再把正文Markdown标题补进{{...}}来源标题。

参数名类型必填说明
title`stringstring[]`
  • 类型:MNNote
  • 语义:返回自身,便于链式调用。
updateTitleFromMarkdown():MNNote

仅根据现有Markdown内容刷新来源标题片段。

  • 类型:MNNote
  • 语义:返回自身,便于链式调用。
_getMDContent():string

提取正文与评论中的Markdown内容。

  • 类型:string
  • 语义:返回Markdown内容。
getMDContent(withBase64?:boolean):string

把当前卡转换成完整Markdown文本。

参数名类型必填说明
withBase64booleantrue时会把图片内容转成Base64文本嵌入。
  • 类型:string
  • 语义:返回完整的Markdown文本。
头文件 API 清单

正在加载…

协议:,来源: