我正在使用Herbots的InputMask,它运行良好,但我注意到它处理的百分比使得掩码为“0.00%”的值为0.4的格式为“0.4%”。
嗯,当然。说得通。除了我正在处理实际百分比值,这是一个介于0和1之间的值,因此0.4应该显示为所有掩码的“40.00%”。
我之前遇到过这个问题(使用其他屏蔽系统),并尝试通过将传入值乘以100并将其除去,在表单级别修复它,但这是一个丑陋的事情。 InputMask(预处理器或自定义挂钩)中是否有某些东西允许我将实际值格式化为适当的百分比?
答案 0 :(得分:0)
好吧,我解决这个问题的方法是使用onBeforeMask和onUnMask函数。在Clojure中,它是:
:onBeforeMask (fn [value opts] (str (* 100 (cljs.reader/read-string value))))
:onUnMask (fn [maskedvalue unmaskedvalue] (str (/ unmaskedvalue 100)))
如果有数据,我仍然会相信按摩数据的替代方法。关键似乎是onBeforeMask为你提供了一个字符串并期望返回一个字符串,其中onUnMask会给你一个数字(但仍然需要一个字符串)。