python vuejs聊天室_vue仿微信界面聊天室项目|vue聊天案例

本文介绍了一个使用Vue2.0、Vuex、vue-router和webpack等技术构建的仿微信聊天室项目。它实现了消息、表情、图片和视频功能,包括消息发送、表情预览和媒体文件预览。项目中还包含了登录注册功能,并通过vue-router进行页面路由管理,同时在路由层面进行了登录状态的拦截。
摘要由CSDN通过智能技术生成

基于vue开发的仿微信聊天室vue-wechatRoom实例,vue版仿微信聊天界面|仿微信聊天对话框vue版,使用了vue2.0+vuex+vue-router+webpack+wcpop等技术开发,实现了消息、表情发送,图片、视频预览等功能。

8c249a1f03c50b77934f441f8d6286e2.png

9f1569b092a3d99373a14d47b15eabfe.png

43784564c1ffa878e0b3e767c7f889d9.png

19eda700e7614d35cd9e1da26413ceac.png

eb73c8cd26d5cf9291ec14c9f449da8f.png

798fba189f1990d1fce4836a5b17a918.png

3eab616b5fc33d8e3b0adcbbf830eb1b.png

fbf58f385236486fc2dd3a401d34cc94.png

ae196d2e56c92a2776c490e4ae51f6ed.png

00ba46696e84c44de6d1f0f2b17d1515.png

cb9ac560fe2764993ec07cbde010609b.png

7a1b8a4a52d46ce8549355686099e0a9.png

65efd081175607f9b7c3f22295896d33.png

import headerBar from './components/header'

import tabBar from './components/footer'

export default {

name: 'app',

data () {

return {

isTopFixed: true

}

},

components: {

headerBar,

tabBar

}

}

/* 引入公共样式 */

@import './assets/fonts/iconfont.css';

@import './assets/css/reset.css';

@import './assets/css/layout.css';

地址路由及登录、注册拦截

/*

* 页面地址路由js

*/

import Vue from 'vue'

import _router from 'vue-router'

import store from '../vuex'

Vue.use(_router) //应用路由

const router = new _router({

routes: [

// 登录、注册

{

path: '/login',

component: resolve => require(['../views/auth/login'], resolve),

},

{

path: '/register',

component: resolve => require(['../views/auth/register'], resolve),

},

// 首页、通讯录、我

{

path: '/',

component: resolve => require(['../views/index'], resolve),

meta: { showHeader: true, showTabBar: true, requireAuth: true }

},

{

path: '/contact',

component: resolve => require(['../views/contact'], resolve),

meta: { showHeader: true, showTabBar: true, requireAuth: true },

},

{

path: '/contact/uinfo',

component: resolve => require(['../views/contact/uinfo'], resolve),

},

{

path: '/ucenter',

component: resolve => require(['../views/ucenter'], resolve),

meta: { showHeader: true, showTabBar: true, requireAuth: true }

},

// 聊天页面

{

path: '/chat/group-chat',

component: resolve => require(['../views/chat/group-chat'], resolve),

meta: { requireAuth: true }

},

{

path: '/chat/single-chat',

component: resolve => require(['../views/chat/single-chat'], resolve),

meta: { requireAuth: true }

},

{

path: '/chat/group-info',

component: resolve => require(['../views/chat/group-info'], resolve),

meta: { requireAuth: true }

}

// ...

]

})

// 注册全局钩子拦截登录状态

const that = this

router.beforeEach((to, from, next) => {

const token = store.state.token

// 判断该路由地址是否需要登录权限

if(to.meta.requireAuth){

// 通过vuex state获取当前token是否存在

if(token){

next()

}else{

// console.log('还未登录授权!')

next()

wcPop({

content: '还未登录授权!', style: 'background:#e03b30;color:#fff;', time: 2,

end: function(){

next({ path: '/login' })

}

});

}

}else{

next()

}

})

export default router

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值