MNNotebook
MNNotebook是用于操作学习集和文档笔记本的核心对象,提供集合管理、范围选择、卡片遍历和文档关联等功能,管理集合数据和执行相关操作。
new MNNotebook(notebook: MbTopic|string|MNNotebook)构造一个新的MNNotebook实例。
| 参数名 | 类型 | 必填 | 说明 |
|---|---|---|---|
notebook | MbTopic|string|MNNotebook | 是 | 学习集对象、学习集id或MNNotebook实例。 |
类成员(Class members)
Section titled “类成员(Class members)”currentNotebook
Section titled “currentNotebook”static get currentNotebook(): MNNotebook|undefined返回当前学习集实例。
- 类型:
MNNotebook|undefined - 语义:返回当前学习集实例,无法解析时返回undefined。
allNotebooks
Section titled “allNotebooks”static allNotebooks(): MNNotebook[]返回当前数据库中的全部学习集并转换为MNNotebook实例数组。结果包含文档学习集、学习集和复习组,可用于全量遍历。
无。
- 类型:
MNNotebook[] - 语义:返回所有notebook的MNNotebook包装数组。
allNotebookIds
Section titled “allNotebookIds”static allNotebookIds(): string[]返回全部学习集的topicId数组。仅返回id不包含对象详情,适合做快速存在性判断。
无。
- 类型:
string[] - 语义:返回全部notebookId数组。
allDocumentNotebooks
Section titled “allDocumentNotebooks”static allDocumentNotebooks(option?: { exceptNotebookIds?: string[]; exceptNotebookNames?: string[] }): MNNotebook[]返回全部文档学习集并支持排除指定id或名称。未传option时执行全量查询。
| 参数名 | 类型 | 必填 | 说明 |
|---|---|---|---|
option | { exceptNotebookIds?: string[]; exceptNotebookNames?: string[] } | 否 | 筛选参数对象。 |
- 类型:
MNNotebook[] - 语义:返回文档笔记本的MNNotebook实例数组。
allReviewGroups
Section titled “allReviewGroups”static allReviewGroups(option?: { exceptNotebookIds?: string[]; exceptNotebookNames?: string[] }): MNNotebook[]返回全部复习组并支持排除指定id或名称。未传option时执行全量查询。
| 参数名 | 类型 | 必填 | 说明 |
|---|---|---|---|
option | { exceptNotebookIds?: string[]; exceptNotebookNames?: string[] } | 否 | 筛选参数对象。 |
- 类型:
MNNotebook[] - 语义:返回复习组的MNNotebook实例数组。
allStudySets
Section titled “allStudySets”static allStudySets(option: {exceptNotebookIds?:string[],exceptNotebookNames?:string[]}): MNNotebook[]返回flags为2的学习集实例数组。会按option排除指定学习集,不满足条件时返回空数组。
| 参数名 | 类型 | 必填 | 说明 |
|---|---|---|---|
option | {exceptNotebookIds?:string[],exceptNotebookNames?:string[]} | 否 | 排除配置。 |
- 类型:
MNNotebook[] - 语义:返回flags为2且满足排除条件的学习集数组。
实例成员(Instance members)
Section titled “实例成员(Instance members)”notebook
Section titled “notebook”notebook: MbTopic暴露当前实例绑定的原生MbTopic对象。该对象用于访问底层字段,修改时会直接影响当前学习集状态。
- 类型:
MbTopic - 语义:返回当前实例绑定的原生notebook对象。
notebookId
Section titled “notebookId”get notebookId(): string读取当前学习集的topicId。该字段与notebookId等价,可用于需要原生topic标识的接口。
- 类型:
string - 语义:返回当前notebook的topicId。
topicId
Section titled “topicId”get topicId(): string读取当前学习集的topicId。该字段是topicId别名,便于与不同调用方命名保持一致。
- 类型:
string - 语义:返回当前notebook的topicId。
get id(): string读取当前学习集的topicId。该字段是id别名,适合通用对象列表渲染场景。
- 类型:
string - 语义:返回当前notebook的topicId。
get title(): string读取学习集标题用于界面展示或日志输出。标题内容来自原生对象,不做额外格式化。
- 类型:
string - 语义:返回学习集标题。
get flags(): number读取原生flags数值。该值用于区分文档学习集、学习集和复习组。
- 类型:
number - 语义:返回原生flags数值。
noteColors
Section titled “noteColors”get noteColors(): void触发当前学习集摘录颜色查询。当前实现不返回颜色结果,仅执行内部查询调用。
- 类型:
void - 语义:当前实现只调用查询函数,不返回颜色结果。
get type(): 'documentNotebook'|'studySet'|'reviewGroup'|string根据flags返回学习集类型标识。遇到未收录flags时返回字符串类型值。
- 类型:
'documentNotebook'|'studySet'|'reviewGroup'|string - 语义:按flags映射返回集合类型。
get url(): string生成当前学习集的MarginNote内部链接。链接格式固定为marginnote4app://notebook/
- 类型:
string - 语义:返回
marginnote4app://notebook/<topicId>格式链接。
mainDocMd5
Section titled “mainDocMd5”get mainDocMd5(): string|undefined读取学习集主文档md5。非文档学习集或未绑定主文档时返回undefined。
- 类型:
string|undefined - 语义:返回主文档md5。
mainDoc
Section titled “mainDoc”get mainDoc(): MbBook|undefined按mainDocMd5解析并返回文档对象。主文档不存在或无法解析时返回undefined。
- 类型:
MbBook|undefined - 语义:可解析时返回文档对象,失败返回undefined。
get notes(): MNNote[]返回学习集中的卡片数组并转换为MNNote实例。学习集类型为studySet时会过滤内部辅助卡片。
- 类型:
MNNote[] - 语义:返回当前集合中的MNNote数组。
documents
Section titled “documents”get documents(): MbBook[]返回当前学习集关联的文档对象数组。没有关联文档时返回空数组。
- 类型:
MbBook[] - 语义:返回关联文档对象数组。
documentIds
Section titled “documentIds”get documentIds(): string[]|undefined返回当前学习集关联文档id列表。底层docList为空时返回undefined。
- 类型:
string[]|undefined - 语义:返回docList按
|拆分后的id数组。
options
Section titled “options”get options(): object读取学习集附加配置对象。配置结构随MarginNote版本变化,使用前应先判断字段是否存在。
- 类型:
object - 语义:返回notebook附加配置对象。
hashtags
Section titled “hashtags”get hashtags(): string读取学习集原始hashtags字符串。未设置标签时可能返回空字符串。
- 类型:
string - 语义:返回原始hashtags字符串。
get tags(): string[]把hashtags拆分为标签数组并移除空项。返回结果不包含前导#。
- 类型:
string[] - 语义:返回去空后的标签数组。
tagsTree
Section titled “tagsTree”get tagsTree(): Array<{ name: string; path: string; children: Array<{ name: string; path: string; children: object[]; isLeaf?: boolean }>; isLeaf?: boolean }>把标签数组转换为树形结构,便于分级展示。无标签时返回空数组。
- 类型:
Array<{ name: string; path: string; children: Array<{ name: string; path: string; children: object[]; isLeaf?: boolean }>; isLeaf?: boolean }> - 语义:返回标签树对象。
hideLinksInMindMapNode
Section titled “hideLinksInMindMapNode”set hideLinksInMindMapNode(hide: boolean): void设置脑图节点是否隐藏链接。写入后会直接更新当前学习集配置。
- 类型:
void - 语义:写入当前学习集配置后立即返回,不提供持久化结果回调。
hideLinksInMindMapNode
Section titled “hideLinksInMindMapNode”get hideLinksInMindMapNode(): boolean读取脑图节点隐藏链接开关。未显式设置时返回底层默认值。
- 类型:
boolean - 语义:返回当前是否隐藏链接。
reviewGroup
Section titled “reviewGroup”get reviewGroup(): MNNotebook|undefined返回当前学习集关联的复习组实例。没有reviewTopic时返回undefined。
- 类型:
MNNotebook|undefined - 语义:有reviewTopic时返回复习组实例,没有则返回undefined。
tabDocuments
Section titled “tabDocuments”get tabDocuments(): MbBook[]返回当前学习集的标签页文档列表。未配置tab文档时返回空数组。
- 类型:
MbBook[] - 语义:返回标签页文档对象列表,没有配置时返回空数组。
focusedChat
Section titled “focusedChat”get focusedChat(): MNNote|undefined返回当前学习集聚焦的聊天卡片。没有FocusChatId时返回undefined。
- 类型:
MNNote|undefined - 语义:有FocusChatId时返回聊天卡片,否则返回undefined。
constructor
Section titled “constructor”constructor(notebook: MbTopic|string)构造并绑定一个学习集对象到当前实例。建议优先使用MNNotebook.new以获得统一转换和空值校验。
| 参数名 | 类型 | 必填 | 说明 |
|---|---|---|---|
notebook | `MbTopic | string` | 是 |
- 类型:
MNNotebook - 语义:返回与输入学习集绑定的
MNNotebook实例。
notebooksForDoc
Section titled “notebooksForDoc”notebooksForDoc(docMd5?: string): MNNotebook[]|undefined返回目标文档在当前学习集中的文档学习集列表。目标文档没有映射时返回undefined。
| 参数名 | 类型 | 必填 | 说明 |
|---|---|---|---|
docMd5 | string | 否 | 文档md5,默认当前文档。 |
- 类型:
MNNotebook[]|undefined - 语义:命中映射返回MNNotebook数组,没有映射返回undefined。
mainNoteForDoc
Section titled “mainNoteForDoc”mainNoteForDoc(docMd5?: string): MNNote|undefined返回目标文档在当前学习集中的主卡片。没有主卡映射时返回undefined。
| 参数名 | 类型 | 必填 | 说明 |
|---|---|---|---|
docMd5 | string | 否 | 文档md5,默认当前文档。 |
- 类型:
MNNote|undefined - 语义:找到映射返回主卡片,未找到返回undefined。
tocNotesForDoc
Section titled “tocNotesForDoc”tocNotesForDoc(docMd5?: string): MNNote[]返回目标文档对应的目录卡片列表。没有目录映射时返回空数组。
| 参数名 | 类型 | 必填 | 说明 |
|---|---|---|---|
docMd5 | string | 否 | 文档md5,默认当前文档。 |
- 类型:
MNNote[] - 语义:找到映射返回目录卡片数组,没有映射返回空数组。
open(): void打开当前学习集。该方法只触发跳转行为,不返回打开结果。
无。
- 类型:
void - 语义:触发打开学习集动作后立即返回,不等待界面跳转完成。
openDoc
Section titled “openDoc”openDoc(docMd5: string): void在当前学习集中打开指定文档。传入docMd5无效时不会得到可用文档页面。
| 参数名 | 类型 | 必填 | 说明 |
|---|---|---|---|
docMd5 | string | 是 | 目标文档md5。 |
- 类型:
void - 语义:触发文档打开动作后立即返回,不等待文档渲染完成。
importDoc
Section titled “importDoc”importDoc(): void调起导入文档流程并把文档加入当前学习集。该方法仅触发系统动作,不返回导入结果。
无。
- 类型:
void - 语义:触发系统导入流程后立即返回,不直接提供导入结果。
copy(): void复制当前学习集的关键信息到剪贴板。输出内容主要用于调试和手动核对。
无。
- 类型:
void - 语义:完成复制动作后立即返回,不返回剪贴板写入状态。