位置: IT常识 - 正文

vue 模拟 chatgpt 聊天效果:js 实现逐字显示、延时函数模拟对话(vue 模拟遥控按钮)

编辑:rootadmin
vue 模拟 chatgpt 聊天效果:js 实现逐字显示、延时函数模拟对话 vue 模拟 chatgpt 聊天效果:js 实现逐字显示、延时函数模拟对话

推荐整理分享vue 模拟 chatgpt 聊天效果:js 实现逐字显示、延时函数模拟对话(vue 模拟遥控按钮),希望有所帮助,仅作参考,欢迎阅读内容。

vue 模拟 chatgpt 聊天效果:js 实现逐字显示、延时函数模拟对话(vue 模拟遥控按钮)

文章相关热门搜索词:vue 模拟设备操作界面,vue 模拟excel 撤回恢复,vue 模拟数据,vue 模拟接口数据,vue 模拟短视频平台,vue 模拟excel 撤回恢复,vue 模拟控制台界面,vue 模拟数据,内容如对您有帮助,希望把文章链接给更多的朋友!

模拟 chatgpt 聊天功能,展示对话效果。其中比较有意义的技术点是:js 实现逐字显示、延时函数,同步遍历。

<template> <div class="chat-gpt"> <div id="chat-dialog" class="chat-dialog" ref="chatDialogRef"> <div id="chat-list" class="chat-list" ref="chatListRef"> <div v-for="(item, index) in chatList" :key="index"> <img v-if="item.status && index % 2 == 0" src="../../public/img/speak1.gif" alt="" /> <div :class="index % 2 == 0 ? 'odd' : 'even'">{{ item.content }}</div> </div> </div> </div> </div></template><script>export default { data() { return { textCount: 0, timer: null, chatBaseList: [ "以今日5辆满电无人车,运输5小时能运完50吨货物的标准,已知每辆无人车运输1小时耗电10%,运输效率是多少,每辆无人车耗电多少?花费多长时间?", "运输效率:50吨/5小时=10顿/小时,每辆无人车耗电:10%×5小时=50%,需花费5小时。", "以现有运输效率前提下,再增加5辆无人运输车,完成共计150吨物资的运输任务,整体效率会提高到多少?每辆无人车耗电又是多少?共花费多长时间?", "增加到10辆无人车,完成共计150吨物资运输任务,整体效率会提高到15顿/小时,每辆无人车耗电百分比是15%。运完150吨的话,总共要耗用1.5小时。", "我来想想是否确认执行此调配操作?", "您好,请您慎重考虑。我们将根据您的确认来决定是否执行此调配操作。", "是" ], chatList: [] }; }, mounted() { this.initGPT(); }, methods: { // 延时函数 sleep(delaytime = 10000) { return new Promise(resolve => setTimeout(resolve, delaytime)); }, // 同步遍历,自定义延时时间 async delayDo( iterList, callback = data => console.log(`数据:${data}`), delaytimeList ) { let len = iterList.length; for (let i = 0; i < len; i++) { callback(iterList[i], i); await this.sleep(delaytimeList[i]); } }, // 逐字显示内容 getChatContent(text, index) { this.timer = setInterval(() => { this.textCount++; if (this.textCount == text.length + 1) { this.textCount = 0; this.chatList.splice(index, 1, { content: text, status: false }); clearInterval(this.timer); return; } // 取字符串子串 let nowStr = text.substring(0, this.textCount); this.chatList.splice(index, 1, { content: nowStr, status: true }); }, 200); }, // 点击开始聊天 initGPT() { // const delaytimeList = [11000, 8000, 6000, 15000, 4000]; const delaytimeList = [16000, 11000, 16000, 16000, 5000, 7000]; this.delayDo( this.chatBaseList, (item, i) => { this.getChatContent(item, i); }, delaytimeList ); } }};</script><style lang="scss" scoped>.chat-gpt { width: 33rem; height: 43rem; .chat-dialog { position: relative; height: 43rem; background: 0/33rem url("../../public/img/chat-bg.png") no-repeat; overflow: hidden; .close-icon { position: absolute; top: 1rem; right: 1rem; width: 3.4rem; height: 3.4rem; img { width: 100%; height: 100%; } } .chat-list { display: flex; flex-direction: column; width: 90%; margin: 0 auto; margin-top: 2rem; overflow: auto; >div { display: flex; margin-top: 1rem; >div { max-width: 19rem; padding: 0.6rem; opacity: 0.8; font-size: 0.9rem; font-family: FZLanTingHei-L-GBK; font-weight: 400; color: #c5e7ff; text-align: start; } .odd { align-self: flex-start; background: #435e6f; border-radius: 0px 16px 16px 16px; } .even { align-self: flex-end; background: #31b8c8; border-radius: 16px 0px 16px 16px; } img { width: 2rem; height: 2rem; margin-right: 1rem; } } >div:nth-of-type(odd) { align-self: flex-start; } >div:nth-of-type(even) { align-self: flex-end; } } } .chat-tips { display: flex; height: 5.82rem; margin-top: 1rem; .gpt-icon { height: 100%; img { height: 100%; } } }}</style>

chatgpt 聊天效果

本文链接地址:https://www.jiuchutong.com/zhishi/281433.html 转载请保留说明!

上一篇:Mac 键盘快捷键大全(mac键盘快捷键设置)

下一篇:Javascript Object和Map之间的转换

  • 微信群视频可以切换播放ppt吗(微信群视频可以共享屏幕吗)

    微信群视频可以切换播放ppt吗(微信群视频可以共享屏幕吗)

  • pptrgb颜色模式怎么设置

    pptrgb颜色模式怎么设置

  • ipad2支持哪个版本微信(ipad2支持ios12吗?)

    ipad2支持哪个版本微信(ipad2支持ios12吗?)

  • sdram是什么内存条(sdram ddram)

    sdram是什么内存条(sdram ddram)

  • 打印机显示检查打印机模式是什么意思(打印机显示检查打印机模式)

    打印机显示检查打印机模式是什么意思(打印机显示检查打印机模式)

  • 5g终端是什么(5g终端是不是5g手机)

    5g终端是什么(5g终端是不是5g手机)

  • windows是一个多任务操作系统指的是什么(windows是一个多任务操作,多任务指的是)

    windows是一个多任务操作系统指的是什么(windows是一个多任务操作,多任务指的是)

  • 苹果授权经销商可信吗(苹果授权经销商可以修手机吗)

    苹果授权经销商可信吗(苹果授权经销商可以修手机吗)

  • 拼多多我的现金在哪里(拼多多我的现金提现是真的吗)

    拼多多我的现金在哪里(拼多多我的现金提现是真的吗)

  • 微信忙线中是拉黑了吗(微信忙线中是对方挂断了吗)

    微信忙线中是拉黑了吗(微信忙线中是对方挂断了吗)

  • 手机卡怎么查号码(手机卡怎么查号码归属地)

    手机卡怎么查号码(手机卡怎么查号码归属地)

  • 微信红包怎么修改皮肤(微信红包怎么修改密码)

    微信红包怎么修改皮肤(微信红包怎么修改密码)

  • 趣步为什么置换失败(趣步置换500个需要等多久)

    趣步为什么置换失败(趣步置换500个需要等多久)

  • iphonexr支持反向充电吗(xr支持反向充电)

    iphonexr支持反向充电吗(xr支持反向充电)

  • 拼多多金猪怎么删除好友(拼多多金猪怎么开通VIP?)

    拼多多金猪怎么删除好友(拼多多金猪怎么开通VIP?)

  • 对方关机了怎么找到他(对方关机了怎么知道他什么时候开机)

    对方关机了怎么找到他(对方关机了怎么知道他什么时候开机)

  • 米兔定位电话用什么卡(米兔定位电话需要流量吗)

    米兔定位电话用什么卡(米兔定位电话需要流量吗)

  • 抖音怎么解除拉黑的人(抖音怎么解除拉黑人)

    抖音怎么解除拉黑的人(抖音怎么解除拉黑人)

  • 快手有赞怎么开通(怎么在快手开通有赞怎么开店)

    快手有赞怎么开通(怎么在快手开通有赞怎么开店)

  • 淘宝直播标签重要吗(淘宝主播标签能更换吗)

    淘宝直播标签重要吗(淘宝主播标签能更换吗)

  • 手机双频gps什么意思(手机双频gps有什么用)

    手机双频gps什么意思(手机双频gps有什么用)

  • 麒麟980采用了多少纳米的工艺(麒麟980的机子)

    麒麟980采用了多少纳米的工艺(麒麟980的机子)

  • 手机流量限速怎么解除(手机流量限速怎么弄)

    手机流量限速怎么解除(手机流量限速怎么弄)

  • 闲鱼永久禁言能解除么(闲鱼永久禁言能否解除)

    闲鱼永久禁言能解除么(闲鱼永久禁言能否解除)

  • win10为什么装不回win7(Win10为什么装不了Au2022)

    win10为什么装不回win7(Win10为什么装不了Au2022)

  • 快手上怎么买东西(快手怎么买东西教程怎么加入小黄车)

    快手上怎么买东西(快手怎么买东西教程怎么加入小黄车)

  • 城市维护建设税的计税依据是什么
  • 固定资产什么时候开始折旧
  • 给对方汇钱
  • 企业所得税包含哪些税种
  • 增值税专票发票代码在哪里看
  • 房地产开发企业资质等级有几个
  • 中外合作合资
  • 可转换可赎回债券
  • 红字信息表跨月了还能开吗
  • 预收账款和预付账款什么时候用
  • 服务费公司的账务处理
  • 劳务公司民工工资可以抵进项吗
  • 合同中止发票已入账怎么处理?
  • 年末要计提所得税分录
  • 个体工商户开票金额超过核定了咋办
  • 公户买理财产品怎么做账
  • 消费税组成计税价
  • 商品混凝土的增值税费率
  • 生产型企业一般会有哪些外来文件
  • 物业收取的滞纳金怎么算
  • 工会票据电子化管理系统如何领发票
  • 核定征收个体户怎么报税
  • 如何在没有开瓶器的情况下开红酒
  • 股东变更需要提交的资料
  • 什么情况下出租人可以解除合同
  • 企业购进商品取得的现金折扣
  • php strrchr
  • 应税消费品属于什么科目
  • 小企业的费用包括生产成本吗
  • grid-column
  • php远程命令执行
  • devtools安装mac
  • springboot aop切面
  • php session用法
  • php加密zend
  • 财务报表没有申报会影响领发票吗
  • python爬虫入门教程
  • 织梦是什么框架开发的
  • 公司车辆保险费要交印花税吗
  • 车船税和保险在一张发票怎么做账
  • 公司注销前账务怎么处理好
  • 收据能否入账?如何填写才具有合法性呢...
  • 主营业务成本包括哪些
  • ETC通行费发票抵扣2021新规定
  • 收入准则适用范围
  • 收到违约金如何做账
  • 去年的费用怎么做分录
  • 失业保险稳岗返还计入什么科目
  • 费用误计入固定资产
  • 盘亏和报废报损的区别
  • 固定资产税法折旧年限规定
  • 企业积分是什么意思
  • 无形资产转让计入什么科目
  • 其他资本公积是利得吗
  • 非营利医疗机构什么意思
  • 应付账款核算的项目
  • 安装sql server 2008硬件要求
  • sql server233错误
  • sql分几类
  • MySQL使用xtrabackup进行备份还原操作
  • ubuntu14.04 LTS 下vsftpd安装与配置教程详解
  • centos 安装方法
  • win8系统怎么设置自动关机
  • windows xp iis安装
  • mini programes
  • win7开始菜单中的应用程序图标隐藏了
  • ContentProvider之通过ContentResolver获取图像、视频、音频举例
  • ug语法错误
  • javascript html5 canvas实现可拖动省份的中国地图
  • angular form表单
  • shell脚本中实现rm -fr !(file1)
  • android webview webgl
  • 北京朝阳区地税服务大厅
  • 东莞税收突破2000亿
  • 甲供材备案需要的资料
  • 珠宝消费税怎么计算出来的
  • 水利基金要收滞纳金吗
  • 怎么注册山东省采购网
  • 2021年个税退税条件
  • steam充值码生成
  • 免责声明:网站部分图片文字素材来源于网络,如有侵权,请及时告知,我们会第一时间删除,谢谢! 邮箱:opceo@qq.com

    鄂ICP备2023003026号

    网站地图: 企业信息 工商信息 财税知识 网络常识 编程技术

    友情链接: 武汉网站建设