文件里有yaml属性
t1::2023-09
t2::2023-08,2023-09
用dv.page().t1取属性,总是作为期处理,t2作为对象数组。
如何取得字符串
文件里有yaml属性
t1::2023-09
t2::2023-08,2023-09
用dv.page().t1取属性,总是作为期处理,t2作为对象数组。
如何取得字符串
这些属性里确实没有记录原始字符串,我一般用ob内置的时间库momentjs格式化
moment(dv.page().t1.ts).format('YYYY-MM')
moments 有个时区问题,比如 2023-09,用上面代码,时间显示显示为2023-10
啊?总共就24小时,再怎么搞也只会弄成8月啊,怎么会出来个10月呢
js里月份处理有些坑的,可以自己搜一下
我是想取得串面值,而不是内置识别为不同类型。
可惜dataview确实是将字符串用luxon解析了,而且没有留下原始字符串,只能自己格式化了
只好这样处理了:
let nianyue= (Object.prototype.toString.call(dv.current().显示最近日记数量或指定年月)==“[object Object]”)?dv.current().显示最近日记数量或指定年月.toString().slice(0,7):(typeof(dv.current().显示最近日记数量或指定年月)==“string”? dv.current().显示最近日记数量或指定年月: “”)
关键是荣耀10,代码复杂点或代码行数多点,就导致编辑模式下不执行js脚本。暂时不想换机,又不想用阅读模式。
我在WIN10 , ob 1.3.5 (中文) ,dataview 0.5.38 下测试:
显示最近日记数量或指定年月::2023-09
let nianyue= moment(dv.current().显示最近日记数量或指定年).format(“YYYY-MM”)
dv.paragraph(nianyue)
输出确是2023-10
我怀疑是时区问题。
你下面那份代码都没按我的代码写,要用.ts属性才行啊,直接传递moment不能解析就会变成当前时间