大家好,欢迎来到IT知识分享网。
作为一种低代码应用,在众多应用钉钉的企业和组织中并不陌生。宜搭工具的使用可以极大的方便日常办公,在以往的应用中,通过对宜搭的使用,基本可以作为“问卷”类应用、“OA”类应用、还可以作为 “考试” 类应用来使用,当然其具体的应用可以说多种多样。对于一个稍有一点想法的业务人员来说,可以说是一种多边形助手。
简单分享一个近期遇到的小问题,解决过程中的小技巧,当然很多人可能用不到这种场景,或者说不用宜搭来解决此类问题。仅作分享,高手勿喷。
业务场景
此次的业务场景主要是将宜搭作为“问卷类”工具使用,也就是新建了一个满意度评分表,一群人用来给另外一群人打分。
过程介绍
宜搭中新建“流程”表,当然此处可以使用普通表来实现,主要是这种业务场景下,评分主要就是一个人打分,然后后台记录数据,基本仅此而已。但此处通过流程表来实现,主要是流程表可以实现普通表的功能(如果不需要使用流程的话,完全可以设置流程自动通过),然后也可以后期增加流程的设置。(底层牛马应该都懂得,你永远不知道上头会冒出什么样的“奇思妙想”来,使用流程表也算是给自己留条后路吧)
好了,废话多了……实现方案就是,通过“数值”类型的字段来进行打分,因为需求就是要具体的打分0-100这种实打实的具体数字,不是“分数段”、也不是“小星星”、更不能是“下拉菜单”等等。然后在某项打分的分数低于“70”分的时候,需要多显示一个“文本框”来说如具体的说明事项,即有什么事情是不满意的。

简单示意图
简单一个示意图,大家凑合着看。当然此处我还设置了当打分高于100的时候,也要做出说明。其实如果大家做过宜搭的开发应该会懂的,这个需求通过“数值”字段的属性设置是无法实现的。

数值类型的属性设置
宜搭现有的字段分类中,像下拉单选这种,有“关联选项设置”这种属性,可以很方便的实现对其他字段的显隐性控制。


下拉选项的关联控制
实现方法
基于数值字段的显隐性控制,就只能通过JS代码来实现。即通过一个函数来控制字段的显隐性,在查询宜搭的JS API后,可以发现有一个API可以利用:
this.$(fieldId).setBehavior() 设置指定表单组件的状态,可以设置的表单组件的状态有以下可选值: NORMAL - 正常态,即输入态; READONLY - 只读态; DISABLED - 禁用态; HIDDEN - 隐藏态;
因此函数的设计只需要满足:初始 HIDDEN – 隐藏态;然后在符合条件的情况下变成:NORMAL – 正常态,即输入态;
参考代码如下:
// 在 默认的函数 didMount() 中设置组件为隐藏状态; 然后设置自定义函数: export function getBehavior(data) { // 获取输入框组件的状态,并将其打印出来 const behavior_01 = this.$('textareaField_xxx').getBehavior(); console.log(`text behavior: ${behavior_01}`); // 获取打分01 const value_01 = this.$('numberField_mcl8td1l').getValue(); console.log(`担责意识评分: ${value_01}`); if (isNaN(value_01)) { console.warn("请输入有效的数值"); return; } if (value_01 < 60) { // 满足条件下,设为正常可输入的状态 this.$('textareaField_xxx').setBehavior('NORMAL'); } else if (value_01 >= 60 && value_01 < 80) { // 此处可以设置不同条件下的动作 this.$('textareaField_xxx').setBehavior('DISABLED'); } else { // 分数大于等于80,不执行任何操作 console.log("分数大于等于80,无需处理"); this.$('textareaField_xxx').setBehavior('HIDDEN'); } }
一个简单的小技巧,仅供参考。
免责声明:本站所有文章内容,图片,视频等均是来源于用户投稿和互联网及文摘转载整编而成,不代表本站观点,不承担相关法律责任。其著作权各归其原作者或其出版社所有。如发现本站有涉嫌抄袭侵权/违法违规的内容,侵犯到您的权益,请在线联系站长,一经查实,本站将立刻删除。 本文来自网络,若有侵权,请联系删除,如若转载,请注明出处:https://haidsoft.com/183355.html