- 博客(12)
- 收藏
- 关注
原创 vue web在线聊天功能实现
上一篇介绍了vue怎么实现无限滚动窗体,这一篇就具体怎么使用vue实现web在线聊天功能展开深入讨论。对尚且不清楚怎么实现无限滚动窗体的,可前往这里查看《vue和iview实现无限滚动的正确解法》先看看最终实现的效果实现过程无限滚动窗体的实现之前已经介绍过,这里就不在赘述了,不清楚的可以通过文档前文的传送门进行查看。实时在线聊天主要功能点滚动到两天窗体顶部,自动加载历史跟多信息,数据加载的时候,需要有一个loading动画; 发送信息是滚动条自动滑动到窗体底部,并且自己...
2020-12-16 17:45:17
14952
11
原创 vue和iview实现无限滚动的正确解法
前几天做一个WEB端的实时在线聊天功能,需要用到无限滚动窗体。我UI框架用的是IVIEW,自然想到使用iview的Scroll去实现聊天窗体,但是使用下来遇到不少坑。网上google百度了好久,都没找到正确的解决之道,更有甚有些文章完全是误人子弟的。所以这几天想抽空写下这篇文章,帮助后人避开一些坑。后续我会再写一篇文章分享在线聊天功能具体实现过程,所以这里只会讲解无限滚动窗体的实现。无限滚动的聊天窗体基本要求能够向上无限滚动历史信息; 窗体打开或发送信息,窗体滚动条默认在窗体底部; 向..
2020-12-16 09:55:10
3774
原创 iview弹窗拖拽效果和遮罩层同时使用
iview弹框一般是使用创建一个Modal组件,通过设置v-model属性控制弹框显示不显示。实现代码如下:<Modal :title="一个简单的弹框" v-model="isVisible" :width="500"></Modal>想要让弹框后不能操作页面的其他内容,实现遮罩效果也很简单,只要在Modal里面增mask-closable属性设置就可以了。iview中Moadl对话框是否有遮罩层默认属性是true,想要关闭设置成.
2020-12-15 13:09:52
2341
2
原创 Swagger正确打开方式(二)安全访问
安全访问主要分以下两种:1.环境的安全隔离。swagger基本上把项目所有的请求接口都罗列出了,而且支持接口在线调试,所以线上环境不应该开启swagger接口功能,试想如果开启了swagger功能,哪位开发测试人员,通过swagger就可以任意访问线上接口了,这显然是不安全的。2.接口访问权限认证。我们的很多接口都是需要登录后才能访问及操作,为了安全起见,用swagger也不能例外。环境的安全隔离...
2020-11-26 13:56:08
19400
1
原创 Swagger正确打开方式(一)Swagger2.X升级到Swagger3.X
之前有用过swagger,但是总感觉不够灵活所以最终选择放弃了。虽然能帮忙省不少下写接口文档和维护接口文档的时间,但是一样的带来了很多的不便利性,比如我的一个接口,不同场景请求参数不一样,通过swagger自动生成的文档很难方便的帮我区分出来,还有我的返回不同错误编码具有不同的业务属性,具体业务说明我很难通过swagger进行自定义。所以我之前一直喜欢用markdown写接口文档,也用过好几个第三方提供的接口文档管理工具。最近工作稍许空下来了,而且好几个同事朋友反复向我推荐swagger,乘着最近刚起一个.
2020-11-24 13:28:34
11162
原创 JWT登录凭证和TOKEN登录凭证对比
前几天新搭一个项目框架,在用户登录凭证选择上纠结了好久。之前我一直用的redis+token认证方式,这种方式感觉灵活也方便,然后同事说应该用JWT令牌方式,现在比较火。然后一场针对怎么选,选什么好的辩论展开了。针对这种技术选型的讨论,我觉得还挺有意思的,其实还是那句话:没有最好的方案,也不存在哪个更好,只是针对不同应用场景有做出合适的选择,那就是最好的。以下是我个人对token和JWT的对比理解:共同点两者都可以携带用户信息都是访问资源的令牌都是使服务端无状态化都是只有验证成功后,客户端才能访
2020-11-18 18:50:42
1593
原创 iview集成阿里云OSS上传功能
之所以写这篇文章,主要还是因为官方文档有不足之处,对接过程中也遇到一些坑,希望后人遇到同样问题不在重蹈覆辙吧,这只算是访问文档没提提及的一下细节的补充,并不能取代官网文档,具体细节,还需要参考官网文档去弄。开篇 官方文档东西很多,毕竟官网是面向大众,对一大群有各种需求的人,给你上一桌有各种口味的菜,总有一道适合你。这样也带来一个问题,很多新手看完所有文档还是不知道哪个方案适合自己,或者需要把所有的文档看完了才知道具体哪个是适合自己的。我的目的不是带大家把.
2020-11-17 18:44:47
903
原创 vue 动态加载路由时报错Error: Cannot find module ‘@/views/xxx‘ at webpackEmptyContext
前几天写代码,写着写着,突然报了一个很奇怪的bug:解决方法如下:删除项目下面的label.config.js授人以鱼不如授人以渔,以下是排查过程的思路,及排查过程尝试过的方法:该错误是点左边菜单树的时候报错,打不开页面,开始以为是修改到了路由相关代码导致的,于是各种检查,没有发现任何异常代码。接下来发现更离谱的事情是打包发到测试环境和线上没这个问题,本地死活不行,把代码回退到之前很老的版本,还是报这个错。接下来梳理报错前到底我做了哪些操作导致这个错误,由于公司是内外网隔离,内网
2020-11-16 11:53:27
28142
8
原创 Error in mounted hook: “TypeError: Cannot read property ‘XXXXX‘ of undefined“
今天使用iview画页面时遇到一个很简单但是搞了很久的bug,加了一个控件<user-select style="width:200px" @on-change="handleSelect" ref="user" v-model="form.userCode"></user-select>然后使用$refs调用组件属性this.$refs.user.initData();然后神奇的地方出现了,不管怎么该,一直报Error in mounted hook:
2020-10-22 11:04:40
32738
2
原创 [踩坑记录]蓝鲸智云在ubuntu系统上部署
今天下载蓝鲸智云社区版在ubuntu系统下安装,一步步折腾半天,出现各种问题。最后联系官方客服回复说:蓝鲸是基于centos开发的,推荐使用centos 系统。这什么推荐使用centos嘛,ubuntu上根本就是不行。望后来者不要重蹈覆辙,避开此坑。...
2020-10-14 17:12:05
460
原创 docker服务及容器设置自动启动
docker设置自动启动一、docker服务设置自动启动查看已启动的服务systemctl list-units --type=service查看是否设置开机启动systemctl list-unit-files | grep enable设置开机启动systemctl enable docker.service关闭开机启动systemctl disable docker.service二、docker容器设置自动启动启动时加--restart=alway
2020-10-14 17:00:06
740
原创 centos 安装docker及部署项目踩坑记录
坑一:安装好docker,在docker容器上部署好mysql,redis及业务服务后,业务服务死活连不上mysql服务。报如下错误:com.mysql.cj.jdbc.exceptions.CommunicationsException: Communications link failure远程机器能够访问,通过navicat也能够访问,但是docker上服务死活访问不了,百思不得其解,网上搜索半天,没有找到一样的错误,最后想可能是本地防火墙的问题,于是关闭本地防火墙,果然问题得到解决。但还是没
2020-10-14 16:51:43
153
空空如也
空空如也
TA创建的收藏夹 TA关注的收藏夹
TA关注的人