Notion 在 DataBase 中添加个性化进度条
最新版本 Notion 进度条:
效果图:
join("", if(largerEq(multiply(divide(prop("已完成"), prop("总计")), 100), 10), slice("????????????????????", 0, multiply(floor(divide(multiply(divide(prop("已完成"), prop("总计")), 100), 10)), 2)), ""), if(largerEq(multiply(divide(subtract(prop("总计"), prop("已完成")), prop("总计")), 100), 10), slice("????????????????????", 0, multiply(ceil(multiply(divide(subtract(prop("总计"), prop("已完成")), prop("总计")), 10)), 2)), ""), " ", slice(format(multiply(divide(prop("已完成"), prop("总计")), 100)), 0, 5), "%")
-----这是一条分割线。【以下代码似乎由于Notion版本更新,导致效果不佳,直接使用上面的代码即可。】------
效果图:
步骤:
1. 增加 Property, 选择类型为 Formula
2. 在输入框中输入以下代码
format(slice("■■■■■■■■■■", 10 - prop("已读章节") / prop("全部章节") * 10) + " " + format(round(prop("已读章节") / prop("全部章节") * 100))) + "%"
-
prop
: 调用表格中的字段,即列名 -
format
: 将值转为字符串类型 -
round
: 取整,舍去小数点
Tips: Formula 中的代码不能换行,否则会报错。只能输入单行代码。
个性化:
可以将 ■ 随意改成自己喜欢的 emoji 字符
如:
format(slice("????????????????????", (10 - prop("已读章节") / prop("全部章节") * 10) * 2) + " " + format(round(prop("已读章节") / prop("全部章节") * 100))) + "%"
Tips: 由于 ?? 的字符长度为2,因此以上代码需要 *2