mirror of
https://gitcode.com/gh_mirrors/hy/Hydro.git
synced 2026-10-19 17:38:19 +08:00
评测列表实时更新&评测机接口更换为socket
This commit is contained in:
1 parent
f055d79fef
commit
ec727d58aa
7 files changed
+107
-50
No files matched your search
@@ -15,7 +15,7 @@ GET('/r', async ctx => {
|
||||
ctx.templateName = 'record_main.html';
|
||||
let q = {},
|
||||
page = ctx.query.page || 1;
|
||||
let rdocs = await record.getMany(q, { rid: 1 }, page, constants.RECORD_PER_PAGE);
|
||||
let rdocs = await record.getMany(q, { _id: -1 }, page, constants.RECORD_PER_PAGE);
|
||||
let pdict = {}, udict = {};
|
||||
for (let rdoc of rdocs) {
|
||||
udict[rdoc.uid] = await user.getById(rdoc.uid);
|
||||
@@ -39,6 +39,14 @@ SOCKET('/record-conn', [], conn => {
|
||||
conn.send({ html: await conn.renderHTML('record_main_tr.html', { rdoc, udoc, pdoc }) });
|
||||
}
|
||||
bus.subscribe(['record_change'], onRecordChange);
|
||||
conn.on('data', async message => {
|
||||
console.log(message);
|
||||
let { rids } = JSON.parse(message);
|
||||
for (let rid of rids) {
|
||||
let rdoc = await record.get(rid);
|
||||
await onRecordChange({ value: rdoc });
|
||||
}
|
||||
});
|
||||
conn.on('close', () => {
|
||||
bus.unsubscribe(['record_change'], onRecordChange);
|
||||
});
|
||||
|
||||
Reference in new issue
Block a user