mirror of
https://gitee.com/zoujingli/ThinkAdmin.git
synced 2025-04-06 03:58:04 +08:00
117 lines
4.5 KiB
JavaScript
117 lines
4.5 KiB
JavaScript
(new function () {
|
|
this.app = angular.module("michat", []).run(callback);
|
|
angular.bootstrap(document.getElementById(this.app.name), [this.app.name]);
|
|
|
|
function callback($rootScope) {
|
|
$rootScope.text = '';
|
|
$rootScope.user = {};
|
|
$rootScope.list = [];
|
|
|
|
// 数字位数处理
|
|
function toNum(value, fixed) {
|
|
while (("" + value).length < fixed) value = '0' + value;
|
|
return value;
|
|
}
|
|
|
|
// 显示时间内容
|
|
$rootScope.showDatetime = function (date) {
|
|
var md, td, tm, my = new Date();
|
|
md = my.getFullYear() + '-' + toNum(my.getMonth() + 1, 2) + '-' + toNum(my.getDate(), 2);
|
|
td = date.getFullYear() + '-' + toNum(date.getMonth() + 1, 2) + '-' + toNum(date.getDate(), 2);
|
|
tm = toNum(date.getHours(), 2) + ':' + toNum(date.getMinutes(), 2) + ':' + toNum(date.getSeconds(), 2);
|
|
return md === td ? tm : (td + tm);
|
|
};
|
|
for (let i = 10; i <= 99; i++) $rootScope.list.push({
|
|
active: false,
|
|
headimg: 'https://demo.thinkadmin.top/upload/decb0fe26fa3f486/b3f6521bf29403c8.png',
|
|
username: 'nickname_a_' + i,
|
|
nickname: 'NickName_A_B_C' + i,
|
|
message: [
|
|
{
|
|
type: 'text',
|
|
float: 'left',
|
|
nickname: 'Nickname_A_' + i,
|
|
headimg: 'https://demo.thinkadmin.top/upload/decb0fe26fa3f486/b3f6521bf29403c8.png',
|
|
content: '消息内容_1_' + i,
|
|
datetime: new Date()
|
|
},
|
|
{
|
|
type: 'text',
|
|
float: 'right',
|
|
username: 'think_admin',
|
|
nickname: 'ThinkAdmin',
|
|
headimg: 'https://demo.thinkadmin.top/upload/decb0fe26fa3f486/b3f6521bf29403c8.png',
|
|
content: '消息内容_2_' + i,
|
|
datetime: new Date()
|
|
},
|
|
{
|
|
type: 'text',
|
|
float: 'right',
|
|
username: 'think_admin',
|
|
nickname: 'ThinkAdmin',
|
|
headimg: 'https://demo.thinkadmin.top/upload/decb0fe26fa3f486/b3f6521bf29403c8.png',
|
|
content: '消息内容_2_' + i,
|
|
datetime: new Date()
|
|
},
|
|
{
|
|
type: 'text',
|
|
float: 'left',
|
|
username: 'nickname_a_' + i,
|
|
nickname: 'Nickname_A_' + i,
|
|
headimg: 'https://demo.thinkadmin.top/upload/decb0fe26fa3f486/b3f6521bf29403c8.png',
|
|
content: '消息内容_2_' + i,
|
|
datetime: new Date()
|
|
}
|
|
]
|
|
});
|
|
// 移除当前用户
|
|
$rootScope.removeUser = function (user, temp) {
|
|
temp = [];
|
|
for (let i in $rootScope.list) {
|
|
if ($rootScope.list[i].username !== user.username) {
|
|
temp.push($rootScope.list[i]);
|
|
}
|
|
}
|
|
$rootScope.list = temp;
|
|
};
|
|
// 聊天内容底部
|
|
$rootScope.scrollBottom = function () {
|
|
setTimeout(function (div) {
|
|
div = document.querySelector('.michat-right-list');
|
|
div.scrollTop = div.scrollHeight;
|
|
}, 10);
|
|
};
|
|
// 切换当前用户
|
|
$rootScope.switchUser = function (user) {
|
|
for (let i in $rootScope.list) {
|
|
if ($rootScope.list[i].username === user.username) {
|
|
$rootScope.list[i].active = true;
|
|
$rootScope.user = user;
|
|
} else {
|
|
$rootScope.list[i].active = false;
|
|
}
|
|
}
|
|
this.scrollBottom();
|
|
};
|
|
// 回复消息内容
|
|
$rootScope.replyUser = function () {
|
|
if ($rootScope.text.length < 1) {
|
|
alert('请输入内容');
|
|
}
|
|
$rootScope.user.message.push({
|
|
type: 'text',
|
|
float: 'right',
|
|
username: 'NICKNAME_A',
|
|
headimg: 'https://demo.thinkadmin.top/upload/decb0fe26fa3f486/b3f6521bf29403c8.png',
|
|
content: $rootScope.text,
|
|
datetime: new Date()
|
|
});
|
|
$rootScope.text = '';
|
|
$rootScope.scrollBottom();
|
|
};
|
|
// 默认选择会话
|
|
$rootScope.switchUser($rootScope.list[2]);
|
|
}
|
|
});
|
|
|