以下是项目的最终效果,有兴趣可点击 传送门>> 体验
本文主要分享该项目中实现关键词自动回复的核心逻辑。
首先,客服的对话窗口是一个中继器,关于如何通过中继器实现这种对话效果,各位可参考本人之前分享的文章《【Axure 教程】中继器,你过来,我们“聊聊”》,本项目就是在此基础上修改的。
接下来讲讲重点——如何实现关键词自动回复效果。
首先讲一下原理。这个功能的实现需要两个中继器,一个是上文提过的,用来保存对话,另一个则是用来保存关键词和回复内容。当用户输入并发送内容时,将内容在存放关键词的中继器中进行查找,如果匹配到,就将关键词对应的内容添加到对话中继器中,这样就可以实现关键词触发回复的效果(在本项目中,存放关键词的中继器被放置到工作区的负空间,所以是看不到的)。
原项目涉及的交互比较多,接下来我用一个另一个简单的小案例来解释一下这个逻辑在 Axure 中是如何实现的。
先画界面,包含两个中继器,一个输入框和发送按钮。
两个中继器的结构是一样的,分别包含3列:First_name、Last_Name、Score。
要实现的效果是,点击发送时,如果输入框的内容不为空且能在“源数据”的中继器中匹配到对应的“First_Name”,则将对应的整行数据添加到“查询结果”的中继器中。
从这里你应该可以看出,所谓的“源数据”对应的就是上文说的关键词中继器,而“查询结果”就是对话中继器,形式不同,但原理是相同的。
配置也不复杂,首先找到“源数据”中继器中用来显示“First_Name”的矩形,添加载入事件,载入时判断“First_Name”与输入的内容是否相同,如果是,就往“查询结果”中继器添加1数据,添加的数据分别为当前这一行的 First_name、Last_Name、Score。
接下来给发送按钮添加单击时触发该矩形的载入事件就完成了。
看看效果:
当输入的 First_Name 不存在时,点击没有任何效果,存在时,会在右侧显示查询到的数据,如果把“源数据”的中继器隐藏掉或拖入负空间,则会是这样的效果:
以上便是本文的全部内容,感谢阅读!
作者就是来引流卖原型的。。。
已经按照作者演示的内容做出来了。
简单说一下这个功能实现的思路:
1、不同类型的关键词在中继器中,可以通过设置动态面板来实现,图片的话需要存储图片尺寸信息。
2、对话中继器中需要设置哪一条是用户输入的,哪一条是客服回复的,可以简单通过type 1 or 2来区分,设置的必要性为,可以通过这个区分,对话信息应该显示在左侧还是右侧,以及设置当人发送的内容时,背景显示为绿色,这个可以简单设置为选中,以及选中时的背景色。
3、如何做到输入以后,当出现垂直滚动条,会自动下滑至最底部。
这个效果卡了我一天,后面还是用热区实现了,逻辑是,每次需要移动的时候,先判断一下中继器当前最底部bottom的位置,然后使用这个位置去移动热区,始终让热区保持在对话中继器的底部,再使用滚动到元件,把对话中继器外部的动态面板的滚动条滚动到最底部。
最后再说一下目前作者原型中的一个小bug,当点击对话结束以后,再去点击热门关键词,还能显示在输入区域。
可以看一下中继器交互界面吗大佬
https://chanpinjinli.lanzoub.com/inarz1wuuvbg
密码:3cbw
大佬我用的9😭
感谢大佬,但有9版本的吗,想查看告知我需要更新😭
怎么按照步骤下来,点击发送,完全没有显示添加一行呢
如果效果与文中不一致,肯定是有哪里配置错了,这个需要看到源文件才能知道具体问题,以下是本文项目的源文件,你可以对比参考一下。
https://chanpinjinli.lanzoub.com/iChXz1m5zb1g
密码:3gde
已经做出来了,谢谢
可以再发一下吗,链接失效了
请问这里的一次回答多条信息是如何实现的,为啥我做出来的有两个提问
https://chanpinjinli.lanzv.com/i4jbs1m5zc1c
密码:cmyx
这是源文件,你可以参考一下
输入框矩形元件的载入事件,添加判断条件时找不到中继器的项Item.First_ Name,难道是这个矩形是放在“源数据”中继器里面的吗?
矩形输入框是在源数据中继器里面画的吗