DataviewJS 的翻页与随机

更新简要解析,折叠三角可点击展开,没找着代码仔细重看 #1 #2
若理解困难,可依 DataviewJS 小白手册 中“小白入门 DataviewJS 方法”,先掌握基础。
额外需求仍请另建话题。点击图片或右键 - 打开图片查看大图。

  • JS 方法

    • .push() 添加新元素到数组。
    • .split() 根据指定分隔符切片字符串,每片成为新数组的每项。\n 表换行符,\n\n 表连续 2 个换行符。
    • .substring().slice() 切割。
  • Ob API:app.vault.readRaw() 读取原文。

  • 代码结构

    • dv.el("button", "按钮名").onclick = ()=> { } 生成按钮、添加点击事件。
    • Math.floor(Math.random()*数组.length) 生成随机数;数组[随机数] 取出随机项。

实例 1 要点:

实例 1 格式行:

?.forEach(p=> tdata.push([ `[❔](<${file.file.path}#${p.trim().match( / (\^[a-z0-9]{6,})/ )?.[1]}>)`, p.trim() ]))

表体第一列:`[❔](<${file.file.path}#${p.trim().match( / (\^[a-z0-9]{6,})/ )?.[1]}>)`
- 格式:[❔](<文件路径#^块ID>)  // []()格式的块引用链接
- 正则:/ (\^[a-z0-9]{6,})/ )?.[1]  // ?.[1] 返回正则第一个括号捕获的内容,避免因无匹配值而抛出错误
2 个赞