前端 API
前端 API 支持两种样式,一种是使用当前应用程序和笔记上下文运行的常规脚本,另一种是将对象导出到 Trilium 以在 UI 中使用的小部件。在这两种情况下,Trilium 的前端 API 都可用于在前端上下文中作为全局变量运行的脚本。API 的成员和方法可以在脚本 API 页面上看到。api
脚本
脚本没有任何特殊要求。可以使用UI中的执行按钮随意运行它们,也可以使用包含脚本的注释上的属性将其配置为在特定时间运行。
全球活动
调用此属性,它可以具有以下任何值:#run
frontendStartup- 启动时在前端执行。mobileStartup- 启动时在移动前端执行。backendStartup- 启动时在后端执行。hourly- 在后端每小时执行一次。daily- 每天在后端执行一次。
实体事件
这些事件是由与其他笔记的某些关系触发的。这意味着仅当笔记通过关系附加了此脚本(或者它可以继承它)时,才会触发脚本。
runOnNoteCreation- 在后端创建笔记时执行。runOnNoteTitleChange- 在笔记标题更改时执行(也包括笔记创建)。runOnNoteContentChange- 在笔记内容发生更改时执行(也包括笔记创建)。runOnNoteChange- 在笔记更改时执行(也包括笔记创建)。runOnNoteDeletion- 在删除笔记时执行。runOnBranchCreation- 在创建分支时执行。分支是父笔记和子笔记之间的链接,例如在克隆或移动笔记时创建。runOnBranchDeletion- 在删除分支时执行。分支是父笔记和子笔记之间的链接,例如在移动笔记时被删除(旧分支/链接被删除)。runOnChildNoteCreation- 在此笔记下创建新笔记时执行。runOnAttributeCreation- 在此笔记下创建新属性时执行。runOnAttributeChange- 在此笔记下更改属性时执行。
部件
与脚本相反,小部件确实有一些特定的要求才能工作。小组件必须:
扩展 BasicWidget 或其子类之一。
创建一个新实例并将其分配给 。
module.exports定义成员以确定应在何处显示。
parentWidget定义一个(整数),通过排序顺序确定位置。
position在包含的注释上有一个属性。
#widget在 render 函数中创建、渲染和返回元素。
对于 BasicWidget 和 NoteContextAwareWidget,您应该在 中创建并渲染它。
this.$widgetdoRender()对于 RightPanelWidget,并且已经处理了 ,您应该返回 中的值。
this.$widgetdoRender()doRenderBody()
parentWidget
left-pane- 这会在笔记树所在的屏幕左侧呈现小部件。center-pane- 这会将小部件渲染在布局的中心,与注释和拆分显示的位置相同。note-detail-pane- 这将在中心窗格中呈现带有注释的小部件。这意味着它可以通过拆分多次出现。right-pane- 这会将小部件呈现在任何打开的笔记的右侧。
教程
有关构建控件的更多信息,请查看控件基础知识。