能根据当前是星期几,使用不同的模板吗?
遇到的问题
想自动生成日程规划,并且根据当前是星期几使用不同的日程模板,有没有大佬有思路啊
预期的效果
- 星期一使用周一的模板生成日程规划;
- 星期二使用周二的模板生成日程规划;
- 以此类推……
已尝试的解决方案
目前用QuickAdd插件做了一个宏,第3步根据模板生成日程文件,只能每天用一样的模板。
有没有办法在第3步外面包一层if逻辑判断啊?
或者整个宏外面包一层,周一用周一的宏,周二用周二的宏……
或者有其他插件可以实现?
能根据当前是星期几,使用不同的模板吗?
想自动生成日程规划,并且根据当前是星期几使用不同的日程模板,有没有大佬有思路啊
目前用QuickAdd插件做了一个宏,第3步根据模板生成日程文件,只能每天用一样的模板。
有没有办法在第3步外面包一层if逻辑判断啊?
或者整个宏外面包一层,周一用周一的宏,周二用周二的宏……
或者有其他插件可以实现?
插件官方文档提供了执行quickAdd命令的API,参照官方例子改了下,目前看起来是可以了
let QuickAdd, Settings;
async function start(e, t) {
QuickAdd = e, Settings = t;
var m = moment().locale('en');
const dayOfWeek = m.format('dddd');
const command = 'Generate plan of ' + dayOfWeek;
Settings.dayOfWeek = dayOfWeek;
await QuickAdd.quickAddApi.executeChoice(command,Settings);
// QuickAdd.variables = {
// dayOfWeek: dayOfWeek
// }
}
module.exports = {
entry: start,
settings: {
name:"DailyPlan Script",
author:"Chris"
}
};
ps:我看官方例子,很多传给模板的参数可以放到QuickAdd.variables里,我放参数进去就跳输入框让我手动输入,有大佬知道原因吗?
另外我的使用场景里,day planner插件获取不到自动生成的日记文件的路径,渲染timeline的时候有问题。必须执行脚本后马上鼠标点一下生成的模板文件页面才正常显示,我又改了下插件代码。。。
insertDayPlannerIntoCurrentNote方法const filePath = view.getState().file;
这一行改成const filePath = this.app.workspace.getActiveFile().path;
既然折腾了就分享出来吧。。不会前端,也不知道会不会出问题哈哈,目前看起来完美
忽略那个a。。。
哇!太感谢了!很有帮助!
关于QuickAdd.variables里的参数,虽然我不是大佬不清楚原理,但是在传递的变量前加上…就不会跳输入框了。例如在你的代码里用
QuickAdd.variables = {
...Settings
};
再次感谢!!