先看效果:

实现过程:

<!DOCTYPE html>
<html><head><meta charset="UTF-8"><title>HTML5模拟微信聊天界面</title><style>/**重置标签默认样式*/* {margin: 0;padding: 0;list-style: none;font-family: '微软雅黑'}#container {width: 450px;height: 780px;background: #eee;margin: 80px auto 0;position: relative;box-shadow: 20px 20px 55px #777;}.header {background: #000;height: 40px;color: #fff;line-height: 34px;font-size: 20px;padding: 0 10px;}.footer {width: 430px;height: 50px;background: #666;position: absolute;bottom: 0;padding: 10px;}.footer input {width: 360px;height: 45px;outline: none;font-size: 20px;text-indent: 10px;position: absolute;border-radius: 6px;right: 80px;}.footer span {display: inline-block;width: 62px;height: 48px;background: #ccc;font-weight: 900;line-height: 45px;cursor: pointer;text-align: center;position: absolute;right: 10px;border-radius: 6px;}.footer span:hover {color: #fff;background: #999;}/* #user_face_icon {display: inline-block;background: red;width: 60px;height: 60px;border-radius: 30px;position: absolute;bottom: 6px;left: 14px;cursor: pointer;overflow: hidden;} */img {width: 60px;height: 60px;}.content {font-size: 20px;width: 435px;height: 662px;overflow: auto;padding: 5px;}.content li {margin-top: 10px;padding-left: 10px;width: 412px;display: block;clear: both;overflow: hidden;}.content li img {float: left;}.content li span {background: #7cfc00;padding: 10px;border-radius: 10px;float: left;margin: 6px 10px 0 10px;max-width: 310px;border: 1px solid #ccc;box-shadow: 0 0 3px #ccc;}.content li img.imgleft {float: left;}.content li img.imgright {float: right;}.content li span.spanleft {float: left;background: #fff;}.content li span.spanright {float: right;background: #7cfc00;}</style></head><body><div id="container"><div class="header"><span style="float: left;">微信聊天界面</span><span style="float: right;">14:21</span></div><ul class="content"><li v-for="(item, index) in messageList" ><img :src="'./img/'+(item.isSelf?'r.png':'l.png')" :class="'img'+(item.isSelf?'right':'left')"><span :class="'span'+(item.isSelf?'right':'left')">{{item.message}}</span></li></ul><div class="footer"><!-- 添加输入内容 --><input id="text" type="text" placeholder="说点什么吧..." v-model="inputValue" @keyup.enter="chat"><!-- 给发送也绑定一个事件 --><span id="btn" @click="chat">发送</span></div></div><!-- 导入vue --><script src="./lib/vue.js"></script><!-- 导入jQuery --><script src="./lib/jquery-1.12.4.min.js"></script><!-- 开始代码 --><script>/* 思路分析:一.定义聊天信息数组格式[{message:'',isSelf:true(自己)/false(机器人)}]二.获取自己输入内容,将内容渲染到页面三.获取机器人接口内容,也将内容渲染到页面*///一:let app = new Vue({el: "#container",data: {//输入内容,双向数据绑定inputValue: '',//聊天窗口内容messageList: []},methods: {chat() {// console.log(this.inputValue);// console.log(this);// 二.获取自己输入内容,将内容渲染到页面this.messageList.push({message: this.inputValue,isSelf: true})// 三.获取机器人接口内容,也将内容渲染到页面$.ajax({url:'http://www.tuling123.com/openapi/api',data:{userid:1,//添加id,实现上下文连贯key:'b6ef78a0c1f24fee90d2317139b9c3d5',info:this.inputValue},// 注意使用箭头函数,不然里面的this会发生变化success:(obj)=>{console.log(obj);// 三.获取机器人接口内容,也将内容渲染到页面this.messageList.push({message:obj.text,isSelf:false})}}) this.inputValue='';   //最后清除文本框}},})</script>
</body></html>

附:gethub源码地址:https://github.com/huanggengzhong/jiqiren,有需要,欢迎下载

案例:使用vue开发微信机器人聊天(附完整源码)相关推荐

  1. 知识图谱实战开发案例剖析(16)-第一个智能对话机器人(附完整源码)

    一.前言  这是系列博文<知识图谱实战开发案例剖析>第4部分:知识图谱应用,第16节:第一个智能对话机器人.该系列内容同时已经录制成视频课程,感兴趣的可以访问网易云课堂.  二.正文  2 ...

  2. Ant Design Vue 表格内编辑(附完整源码及效果图)

    效果图: 实现关键代码就是表单的 columns 属性对象下标的 scopedSlots: scopedSlots: {customRender: '' } 实现完整代码: <template& ...

  3. 【代码案例】博客页面设计(附完整源码)

    博客页面设计 博客列表页 实现导航栏 实现版心 实现个人信息 实现博客列表 实现博客正文页 引入导航栏.版心.个人信息 实现博客正文 实现博客登录页 引入导航栏 实现版心和登录框 实现博客编辑页 引入 ...

  4. 聊天机器人mysql数据_自己动手开发智能聊天机器人完全指南(附完整源码)

    一.前言 本文是<自己动手开发智能聊天机器人完全指南(附完整源码)>的第二篇,也是21天实战人工智能系列<知识图谱完全项目案例剖析>里面的知识图谱应用的案例.前文中实现了一个最 ...

  5. 【NLP】自己搭一个多轮对话聊天机器人(附实现源码)

    [NLP]自己搭一个多轮对话聊天机器人(附实现源码) 01 项目框架 02 模型 2.1 粗排 2.1.1BM25 2.1.1 Bool检索 2.2 精排 意图识别 03 API交互 04 微信前端 ...

  6. 知识图谱实战案例完全剖析(附完整源码和数据集)-张子良-专题视频课程

    知识图谱实战案例完全剖析(附完整源码和数据集)-2070人已学习 课程介绍         课程定位:系统学习知识图谱的佳实践: 系统学习:完全覆盖知识建模.图数据库.知识应用和知识获取: 实战指引: ...

  7. ASP.NET 3.5 新特性开发向导实践(附项目源码下载)

    ASP.NET 3.5 新特性开发向导实践(附项目源码下载) 本篇文章将演示ASP.NET 3.5 部分新功能.新特性,包括LINQ.ListView控件.LinqDataSource.DataPag ...

  8. java计算机毕业设计vue开发一个简单音乐播放器源码+mysql数据库+系统+lw文档+部署

    java计算机毕业设计vue开发一个简单音乐播放器源码+mysql数据库+系统+lw文档+部署 java计算机毕业设计vue开发一个简单音乐播放器源码+mysql数据库+系统+lw文档+部署 本源码技 ...

  9. 微信小程序之授权登录(附完整源码)

    个人博客上已经同步更新了文章,有目录索引,阅读起来比较方便,欢迎大家移步个人博客上读阅~ 个人博客地址:http://zwd596257180.gitee.io/blog/2019/04/15/wec ...

最新文章

  1. 万能头文件#include<bits/stdc++.h>更新GCC10.2.0版本
  2. SAP WM初阶之2-Step Picking创建的Group查询报表
  3. Gogs-Windows Server下搭建Git服务器
  4. 他入狱10年自学数学,如今凭借手稿发了篇论文,被同行评价“足以开辟数论新领域”...
  5. 以下可以采用python语言保留字的是-以下哪个选项不是Python语言的保留字?_学小易找答案...
  6. Jedis使用教程完整版
  7. python样本期望值_用 python 做 z 检验,t 检验
  8. UNIX再学习 -- 可重入函数和 SIGCHLD 语义
  9. 如何在Angular Material中制作自定义主题
  10. 一个Cmake的例子
  11. Codeforces 439C Devu and Partitioning of the Array(模拟)
  12. javassm框架项目实例_面试官:小伙子,给我说一下spring框架吧
  13. CI加载model的问题
  14. 【python】conda配置python项目环境(Conda常用命令)
  15. BIM技术在工程成本管控中有哪些优势
  16. 决策树模型及案例(Python)
  17. salesforce chatter 调查的相关内容
  18. Stimulsoft 仪表板.JS 2022.2.1
  19. 目前主流微型计算机显卡总线接口是,江苏省2011年普通高校对口单招文化统考计算机专业综合理论试卷B...
  20. html保存当前页面为图片,将html页面保存成图片,图片写入pdf的实现方法(推荐)

热门文章

  1. 战略分析思路——商业模式拆解(1)
  2. 每天一个kali无线命令--airmon-ng
  3. HTML和web窗体的区别
  4. 《从0到1上线微信小游戏》第八节 在微信开发者工具和手机上调试
  5. 信息技术基础概念介绍
  6. html点击背景图片变模糊,js实现点击上传图片并设为模糊背景
  7. java boolean例子_Java Boolean booleanValue()用法及代码示例
  8. react ant protable自定义搜索下拉框
  9. 使用ZLAN8308M串口服务器4G通信功能解决远程智能无线电表方案
  10. uniappH5+springboot微信授权登录获取用户数据(非静默授权)