什么是操作反馈?为什么需要操作反馈?
操作反馈,是指在使用产品时,系统对用户的操作,或因户的行为导致的变化,给出的反馈,它是体现人与“机”交互的关键场景。
帮助用户随时感知系统的状态,能够告诉用户下一步应该操作什么或者帮助用户做出判读和决定,帮助满足用户的控制感,消减不确定性给用户带来的负面情绪,提升用户体验。
这期讲到的是在iofod中,如何实现WeUI库中的操作反馈组件。在WeUI中,操作反馈组件有Actionsheet、Dialog、Half-screen Dialog、Msg、Picker、Toast、Toptips。
弹出式菜单(Actionsheet)
实例演示:
在往期文章中,有提到Actionsheet的构建详细过程,具体可参考以下链接:
Iofod——WeUI Actionsheet组件的设计与实现 - 掘金 (juejin.cn)
IOS对话框(Dialog)
实例演示:
Dialog,适用于很多场景,它可以在原页面上告知用户并承载相关操作。Dialog组件的内容是可以任意的,甚至可以是表格或者表单。如果只是简单的文字说明,直接插入文本框即可。
该组件的父组件用到了一个特殊的模型变量——render,它可以在判定为真时,使得该组件可视化或者不可视,所以说,只要相关触发组件,添加交互事件tap——修改模型变量render为false即可让组件视觉上消失。
半屏组件(Half-screen Dialog)
半屏组件的功能,与dialog类似,辅助完成当前页面任务时;提醒用户并引导用户的下一步操作;用户主动发起的任务时。在iofod中构建也十分简单,这边提供三种样式,示例演示如图:
其实不难看出,在iofod构建不同类型的复合组件,用到的功能和组件都十分的类似,相当于将多个基础组件整合在一起,其中head部分,拥有两个文本框分别作为标题和副标题,附加一个关闭功能的图标,其中交互事件为tap——修改render模型值为false。Body部分,可分为文本框内容或附有标题的文本内容。最后是确认按钮,既可以使用copy复制,也可以使用以往的自定义button组件,如果是使用copy模型复制的button,就要注意index值,设置子状态default:$active。
提示页(Msg)
示例演示:
选择器(Picker)
示例演示:
选择器的body部分在构建时,为了实现划动的效果,需要配合动效和状态切换的功能。当你复制的数量为5时,需要设置五个不同位置的状态,对父组件添加value值,将获取的索引值修改到value值中,每个value对应一个状态,当value == 1,状态切换为state-1,以此类推。
当设置多项选择器时,就需要将单项选择器进行自定义组件设置,然后拖出进行使用。
弹出式提示(Toast)
示例演示:
在构建弹出式提示组件时,设计思路:
1. 父组件设置active模型值,
2. 对触发按钮设置交互事件应用插值流,控制时长逐时增加,
3. 断言:if $active == 100 ,修改render值为false。
顶部提示条(Toptips)
示例演示:
结语
操作反馈组件的需求一般包括能控制组件的关闭时间、能自定义关闭图标、可以设置提示文本内容、能手动退出提示文本等等,通过低代码平台上的可视化技术使得这些需求自然是可以直接满足,少许需要模型变量与交互事件相互配合,这也是我喜欢低代码的原因之一。
后续,会继续推出WeUI系列组件的实现文章,如果对iofod原理不熟悉的,也可查看往期文章。
相关链接: