单选组件用作数据状态指示器, 绑定函数结果的可能

分享 APaaS单选函数运算  收藏
0 / 47

我希望利用单选组件绑定彩色选项集,以用更醒目的方式来显示当前数据状态。
数据状态可以通过一个函数动态计算值从数个不同字段中映射得到。
固然,将函数作为单选组件的默认值绑定上去,确实可以在创建记录和编辑中状态的时候按照规则变更为对应项,
但是数据因业务流改变时此单选项值并不会根据最新的数据状态计算更新。
除非谁打开表单触发编辑状态。

函数字段在视图中总是实时运算得到的,我猜测是函数运算绑定在组件实例上,
函数组件的 table_cell 实例也有函数接口,故渲染时总是计算值。
而单选组件由于列表实例和非编辑状态的表单实例的 value 都只是简单的映射到 fieldValue, defaultValue 中绑定的函数就不会生效。

现在我能想到的方案就是,
在触发业务流的自定义按键动作前绑定一步 fill-in 操作, 在 fill-in 表单里把状态值单选框组件以 read-only 加入
于是在提交表单中单选组件被渲染,函数被调用,
就能够利用表单的组件为编辑中实例的特性和表单的键入事件触发组件值重运算,得到根据函数运算的状态值。

谢天谢地这个操作是需要用户在业务流执行前键入字段值的,
后续的业务流更新也不会影响此单选值映射所需参考的字段。

如果需要根据业务流执行后的记录状态决定映射结果……
大概只能在业务流里面完成更新了。

或者, 其实也不差这么点性能差别了吧, 要不然把单选组件的非编辑表单实例和列表实例的函数值接口都加上去?