dataviewjs 创建的待办事项,能被保存点选状态吗

dataviewjs 写了一个待办事项,来返回不同的结果
待办事项被勾选,然后点一次双链接,在回来,就又变成没有勾选了
请问 obsidian 是有可能写出具有保存记忆功能的动态js的能力吗?
用deepseek写了好几次都是失败的

用属性的方法可以保存

const container = dv.el("div", "");

// 从当前文件的frontmatter获取状态,如果没有则默认为2
const currentStatus = dv.current().status || 2;
const isChecked = currentStatus === 1;  // 1=选中,2=未选中

// 创建复选框
const checkbox = dv.el("input", "", {
    type: "checkbox",
    checked: isChecked  // 确保初始状态正确
});

// 创建状态显示
const statusSpan = dv.el("span", currentStatus.toString(), {
    style: "margin-left: 5px;"
});

// 添加事件监听器
checkbox.addEventListener("change", async function() {
    const newStatus = this.checked ? 1 : 2;
    statusSpan.textContent = newStatus.toString();
    
    // 更新frontmatter
    const file = app.workspace.getActiveFile();
    await app.fileManager.processFrontMatter(file, fm => {
        fm.status = newStatus;
    });
});

// 将元素添加到容器
container.appendChild(checkbox);
container.appendChild(statusSpan);

// 强制更新复选框状态(解决Obsidian渲染问题)
setTimeout(() => {
    checkbox.checked = isChecked;
}, 100);

不太懂,你的意思是dataview渲染的查询结果,其任务的状态修改可以反馈到实际的文本么?