为了账号安全,请及时绑定邮箱和手机 立即绑定

基于Nuxt+Vant聊天模板|nuxt.js仿微信界面|红包|朋友圈

标签:
Vue.js webpack vuex

项目说明

> [NuxtIMChat项目]是基于vue.js+nuxt.js+vuex+webpack+vant-ui开发的仿微信聊天实例。实现了消息发送、图片/视频预览、下拉刷新/长按弹窗、朋友圈等功能。

图片描述

技术架构

  • 运用技术:nuxt.js+vue.js+vuex
  • UI组件库:vant (有赞移动端vue.js组件库)
  • 字体图标:阿里iconfont图标库
  • 弹窗组件:vpopup(基于vue自定义弹框)
  • 本地存储:cookie-universal-nuxt: ^2.1.4

img

初步了解Nuxt.js

Nuxt.js 是一个基于 Vue.js 架构开发的服务端SSR渲染通用应用框架。让你的项目网站轻松实现SEO功能。
img
img
大家可以去官网查看更详细的资料。
https://zh.nuxtjs.org/
https://github.com/nuxt/nuxt.js

图片描述

图片描述

图片描述

图片描述

图片描述

图片描述

图片描述

图片描述

图片描述

图片描述

图片描述

图片描述

图片描述

图片描述

图片描述

图片描述

图片描述

图片描述

图片描述

自定义组件介绍

项目中页面大致布局都分为顶部、主体内容、底部,其中顶部导航Navbar、底部Tab及弹窗都是自定义组件实现功能。
img
img
img
由于之前有过相关分享文章,这里不多介绍了。
vue自定义导航栏/标签栏Tabbar组件
vue自定义Popup组件|仿ios弹出框

模仿探探/陌陌卡片滑动

项目中“遇见”页面模仿了探探卡片拖拽滑动切换功能。拖拽四周会出现不同的斜切视角。
img
大家如果对实现过程感兴趣的话,可以去看看下面这篇文章。
Vue/Nuxt仿探探/Tinder卡片式滑动堆叠效果

nuxt.config.js配置

Nuxt.js 默认的配置涵盖了大部分使用情形,可通过 nuxt.config.js 来覆盖默认的配置。更详细配置信息可以去查看官网文档。
https://zh.nuxtjs.org/guide/directory-structure

export default {  
  // 端口配置(可选)  
  server: {  
    // port: 3003,  
    // host: '192.168.111.69'  
  },  
  // 页面头部meta信息配置  
  head: {  
    title: process.env.npm_package_name || '',  
    meta: [  
      { charset: 'utf-8' },  
      { name: 'viewport', content: 'width=device-width, initial-scale=1, user-scalable=no' },  
      { hid: 'keywords', name: 'keywords', content: 'Vue.js | Nuxt.js | Nuxt仿微信'},  
      { hid: 'description', name: 'description', content: process.env.npm_package_description || '' }  
    ],  
    link: [  
      { rel: 'icon', type: 'image/x-icon', href: '/favicon.ico' },  
      { rel: 'stylesheet', href: '/js/wcPop/skin/wcPop.css' },  
    ],  
    script: [  
      { src: '/js/fontSize.js' },  
      { src: '/js/wcPop/wcPop.js' },  
    ]  
  },  
  // 全局css配置  
  css: [  
    '~/assets/css/reset.css',  
    '~/assets/css/layout.css',  
    '~/assets/fonts/iconfont.css',  
  ],  
  // 全局插件列表  
  plugins: [  
    '~/plugins/vue-global.js',  
    // 通过这种方式引入本地js也可以(需设置ssr:false)  
    // {src: '~/assets/js/fontSize.js', ssr: false}  
  ],  
  // ...  
}

大家可以在nuxt.config.js中配置全局meta信息,也可以单独在相应页面配置。


聊天模块

刚开始是使用textarea实现。不过textarea中不能插入图片,对于emoj表情需要做转义处理。于是就改为使用了div的可编辑属性来实现插入图文表情。
img

<div class="editor">
    </div>

大家如果有其它好的方法实现编辑器功能,欢迎留言讨论!
图片描述

好了,基于Nuxt实现IM聊天功能就介绍到这里。希望大家能喜欢~~

最后附上一个Flutter实例项目
Flutter+Dart聊天室|flutter仿微信界面|flutter跨端聊天实例

图片描述

点击查看更多内容
3人点赞

若觉得本文不错,就分享一下吧!

评论

作者其他优质文章

正在加载中

xiaoyan2015

Web前端工程师
手记
粉丝
28
获赞与收藏
92

关注作者,订阅最新文章

阅读免费教程

  • Vue 入门教程
    39个小节 165533 1542
  • 后端通用面试教程
    41个小节 28709 323
  • 网络编程入门教程
    20个小节 11926 225
感谢您的支持,我会继续努力的~
扫码打赏,你说多少就多少
赞赏金额会直接到老师账户
支付方式
打开微信扫一扫,即可进行扫码打赏哦
今天注册有机会得

100积分直接送

付费专栏免费学

大额优惠券免费领

立即参与 放弃机会
意见反馈 分销返利 帮助中心 APP下载
官方微信
返回顶部

举报

0/150
提交
取消

玻璃钢生产厂家汉中不锈钢雕塑多少钱孝感玻璃钢外壳厂家直销中山玻璃钢树池坐凳厂家新余玻璃钢造型生产厂家鹤壁玻璃钢装饰造型加工湛江玻璃钢花槽哪家好银川玻璃钢人物雕塑制造广东玻璃钢医疗外壳厂家直销娄底玻璃钢外壳制作绍兴玻璃钢卡通雕塑制造揭阳玻璃钢设备外壳制作陇南玻璃钢装饰工程厂家黄石玻璃钢花钵定制泸州玻璃钢花坛多少钱益阳玻璃钢种植池批发襄阳玻璃钢天花吊顶加工广东玻璃钢树池制造惠州商业美陈定做巴中玻璃钢浮雕厂九江不锈钢花盆生产厂家固原玻璃钢造型批发湘潭玻璃钢天花吊顶制作商丘玻璃钢雕塑厂家直销鄂州商业美陈价格石家庄玻璃钢造型制造昆明玻璃钢景观雕塑批发大同玻璃钢装饰批发安康玻璃钢垃圾桶公司深圳玻璃钢产品加工无锡商业美陈多少钱香港通过《维护国家安全条例》两大学生合买彩票中奖一人不认账让美丽中国“从细节出发”19岁小伙救下5人后溺亡 多方发声单亲妈妈陷入热恋 14岁儿子报警汪小菲曝离婚始末遭遇山火的松茸之乡雅江山火三名扑火人员牺牲系谣言何赛飞追着代拍打萧美琴窜访捷克 外交部回应卫健委通报少年有偿捐血浆16次猝死手机成瘾是影响睡眠质量重要因素高校汽车撞人致3死16伤 司机系学生315晚会后胖东来又人满为患了小米汽车超级工厂正式揭幕中国拥有亿元资产的家庭达13.3万户周杰伦一审败诉网易男孩8年未见母亲被告知被遗忘许家印被限制高消费饲养员用铁锨驱打大熊猫被辞退男子被猫抓伤后确诊“猫抓病”特朗普无法缴纳4.54亿美元罚金倪萍分享减重40斤方法联合利华开始重组张家界的山上“长”满了韩国人?张立群任西安交通大学校长杨倩无缘巴黎奥运“重生之我在北大当嫡校长”黑马情侣提车了专访95后高颜值猪保姆考生莫言也上北大硕士复试名单了网友洛杉矶偶遇贾玲专家建议不必谈骨泥色变沉迷短剧的人就像掉进了杀猪盘奥巴马现身唐宁街 黑色着装引猜测七年后宇文玥被薅头发捞上岸事业单位女子向同事水杯投不明物质凯特王妃现身!外出购物视频曝光河南驻马店通报西平中学跳楼事件王树国卸任西安交大校长 师生送别恒大被罚41.75亿到底怎么缴男子被流浪猫绊倒 投喂者赔24万房客欠租失踪 房东直发愁西双版纳热带植物园回应蜉蝣大爆发钱人豪晒法院裁定实锤抄袭外国人感慨凌晨的中国很安全胖东来员工每周单休无小长假白宫:哈马斯三号人物被杀测试车高速逃费 小米:已补缴老人退休金被冒领16年 金额超20万

玻璃钢生产厂家 XML地图 TXT地图 虚拟主机 SEO 网站制作 网站优化