Dataview进阶 —— 内联DQL查询
- 实用技巧
- 2024-05-12
- 58热度
- 0评论
- Dataviewjs代码片段 —— 列出标签所在段落内容
- Dataviewjs代码片段 —— 查关键词所在行内容
- Dataviewjs进阶 —— 函数集合
- Dataviewjs进阶 —— 基础
- Dataview代码片段 —— 查询所有类型的文件
- Dataview代码片段 —— 限定标签-显示关键词所在行
- Dataview代码片段 —— 查指定标签的文件
- Dataview代码片段 —— 查文件夹所有文件
- Dataview函数集合
- Dataview常用语法速查
- Dataview进阶 —— 隐式字段
- Dataview进阶 —— 内联DQL查询
- Dataview进阶 —— 查询命令
- Dataview进阶 —— 基础字段
- Obsidian进阶 —— 初识Dataview
dataview
inline DQL 内联DQL查询
这里讲解一个前面没有提及的内容,就是 dataview 的内联查询,Inline DQL
。大家可以将他和行内代码块类似,
日常我们使用大的代码块,但是还有一个行内代码块,这点 dataview 引用了和基础markdown语法类似的概念。可以在文章的任何地方插入查询语句,不再局限于固定的代码块查询。
基础语法-用英文单引号包裹
'=this.file.name'
联合使用-嵌入正文中
Today is = date(today)
- = [[exams]].deadline - date(today)
until exams!
通过前缀访问 当前页面 的属性
= this.file.name
= this.file.mtime
= this.someMetadataField
= [[secondPage]].file.name
= [[secondPage]].file.mtime
= [[secondPage]].someMetadataField
[!success] 内联语法的用途
- 他的主要作用是只显示一个值,那么就可以嵌入到任何的地方。不受样式的限制。在实时预览,和阅读模式下生效。
- 内联查询无法查询多个页面。它们始终只显示一个值,而不是值的列表(或表)。您可以通过前缀访问当前页面的属性,也可以通过 访问其他页面的属性。this.``[[linkToPage]]
内联数据视图中的JS
和普通的dataview语法一样,还有对应的 dataviewjs 语法。内联查询也同样可以使用 JavaScript 的能力,写入更灵活的语法。
JS 内联查询演示
- 规范,同样是使用英文的单引号包裹语法,如下
$= dv.current().file.mtime
[!success] JS内联查询和内联查询的区别
与内联 DQL 查询不同,内联 JS 查询可以访问 Dataview JS 查询可用的所有内容,因此可以查询和输出多个页面。
在内联 DataviewJS 中,您可以像在代码块中一样访问变量,并且可以进行所有相同的调用。结果 应该是计算结果为 JavaScript 值的东西,Dataview 将自动适当地呈现该值。dv
dataviewjs