位置: 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之间的转换

  • 格式工厂转ncm失败(格式工厂转换xm失败)

    格式工厂转ncm失败(格式工厂转换xm失败)

  • 骁龙730g和855区别(骁龙730g跟骁龙855有啥区别)

    骁龙730g和855区别(骁龙730g跟骁龙855有啥区别)

  • qq群消息为什么不响(QQ群消息为什么没有提示音)

    qq群消息为什么不响(QQ群消息为什么没有提示音)

  • 三星s10无线充电功率是多大(三星s10无线充电功率)

    三星s10无线充电功率是多大(三星s10无线充电功率)

  • office必须创建账户吗(office创建账号后一直要验证是不是人类)

    office必须创建账户吗(office创建账号后一直要验证是不是人类)

  • qq电话怎么保持不挂(qq电话怎么设置正在通话中)

    qq电话怎么保持不挂(qq电话怎么设置正在通话中)

  • iPad和iPhone蓝牙连接不成功(ipad和iphone蓝牙连接有什么用)

    iPad和iPhone蓝牙连接不成功(ipad和iphone蓝牙连接有什么用)

  • 微信为什么不能删除别人的评论(微信为什么不能注册小号)

    微信为什么不能删除别人的评论(微信为什么不能注册小号)

  • 华为watch gt2e可以接电话吗(华为watch gt2能干嘛)

    华为watch gt2e可以接电话吗(华为watch gt2能干嘛)

  • 红米k30pro自带贴膜吗(红米k30pro手机贴膜教程)

    红米k30pro自带贴膜吗(红米k30pro手机贴膜教程)

  • msmpeng.exe是什么进程(msmpeng.exe 是什么)

    msmpeng.exe是什么进程(msmpeng.exe 是什么)

  • 拼多多商家提现不了(拼多多商家提现可以到微信吗)

    拼多多商家提现不了(拼多多商家提现可以到微信吗)

  • 网店有哪些平台(网店有哪些平台好)

    网店有哪些平台(网店有哪些平台好)

  • qq如果对方把你删了你知道吗(qq如果对方把你屏蔽了怎么办)

    qq如果对方把你删了你知道吗(qq如果对方把你屏蔽了怎么办)

  • 小米mix2s短信闪退(小米手机来信息闪灯)

    小米mix2s短信闪退(小米手机来信息闪灯)

  • iphone怎么暗黑模式(iphone暗黑模式怎么设置)

    iphone怎么暗黑模式(iphone暗黑模式怎么设置)

  • 安卓9.0系统发布时间(安卓系统版本9.0)

    安卓9.0系统发布时间(安卓系统版本9.0)

  • 无基带怎么跳过激活(无基带怎么跳过解码)

    无基带怎么跳过激活(无基带怎么跳过解码)

  • 淘宝发的红包在哪里(淘宝发的红包在哪提现)

    淘宝发的红包在哪里(淘宝发的红包在哪提现)

  • 电脑微信自启在哪里设置(电脑微信自动启动设置方法)

    电脑微信自启在哪里设置(电脑微信自动启动设置方法)

  • iphone添加自定义铃声(苹果自定义怎么用)

    iphone添加自定义铃声(苹果自定义怎么用)

  • 佳能eos r和rp区别(佳能eos r和rp对比评测)

    佳能eos r和rp区别(佳能eos r和rp对比评测)

  • 手机版安全教育平台怎么激活(手机版安全教育平台app下载)

    手机版安全教育平台怎么激活(手机版安全教育平台app下载)

  • m570qs是魅族什么型号(m57oq-s是魅族几)

    m570qs是魅族什么型号(m57oq-s是魅族几)

  • 如何理解虚拟DOM(如何理解虚拟存储的虚拟)

    如何理解虚拟DOM(如何理解虚拟存储的虚拟)

  • 税务申报退税
  • 小规模增值税免征额
  • 小规模季度30万免税
  • 实际上缴税费总额怎么算
  • 土地增值税计税依据
  • 广州二手房免增值税
  • 非货币性资产投资个人所得税
  • 外币投入的资本
  • 车辆使用费怎么开票
  • 暂估成本跨年后未收到票如何处理
  • 建筑行业挂靠代扣税款如何入账?
  • 长期待摊费用的摊销方法
  • 长期股权投资的初始计量
  • 预收账款计入应纳税所得额
  • 企业出租设备取得租金收入要交增值税吗
  • 企业债务重组的案例
  • 出口退税金额和进项税额不一致
  • 税控盘年费去哪里交
  • 增值税专票电话号码错了有关系吗
  • 所得税不能税前扣除项目
  • 所得税退费怎么操作
  • 送礼没有发票怎么解决
  • 产业扶持周转金退回多久到账
  • 子公司借款给母公司是否受2:1
  • 土地开垦费怎么征收
  • 转让技术所有权是什么收入
  • 金蝶迷你版不能期末结账怎么办
  • 库存商品结转会计分录
  • 给对方发短信显示imessage
  • 费用报销单正确填写格式
  • php编程入门教程
  • 至极加速
  • wordpress app怎么用
  • php进程数量怎么决定
  • php教程全集
  • PHP:imagepalettetotruecolor()的用法_GD库图像处理函数
  • php获取访问用户的ip
  • 朱砂矿洞的历史
  • 公司注销时做哪些财务处理
  • 劳务费可以抵扣进项吗
  • 财务会计制度备案
  • vue-axios详细介绍
  • 跨年度费用发票还可以抵扣所得税吗
  • 开源项目排行榜
  • 小程序开发定制
  • 所得税费用要结转损益吗
  • 开具增值税专用发票是什么意思
  • 金融企业往来支出属于费用吗
  • 损益类所得税费用
  • 帝国cms8.0
  • 运输途中的合理损耗计入入账价值
  • 什么叫固定资产
  • 预付款项核销
  • 给客户赞助怎么写合适
  • 成本大于收入汇算清缴怎么处理
  • 经营性租赁账务处理方法
  • 给员工买的手机能抵扣税吗
  • 电子发票如何申请电子签章
  • 资产减值损失可以计入营业外支出吗
  • 可供出售金融资产是指什么
  • 会计写数字的技巧和方法
  • win7硬盘设置在哪里设置
  • winxp系统桌面图片
  • xp系统与win7系统的电脑怎么组成局域网
  • winxp升级win7教程图文
  • centos做服务器
  • win7 设置
  • [置顶]从lv2开始开挂的原勇者候悠闲的异世界生活
  • cocoscreator分包
  • 小地图的主要作用是观察队友的大概位置
  • node.js的流的作用
  • unity资源管理机制
  • linux bash脚本
  • unity socket udp
  • 每天一篇日记100字
  • 教程java
  • jquery鼠标移动触发
  • js常用继承
  • 国家税务局湖南电子税务局登录
  • 攸县丧葬
  • 免责声明:网站部分图片文字素材来源于网络,如有侵权,请及时告知,我们会第一时间删除,谢谢! 邮箱:opceo@qq.com

    鄂ICP备2023003026号

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

    友情链接: 武汉网站建设