fix: instanceJoinHistory not updating correctly (#1478)

This commit is contained in:
pa
2025-11-10 12:08:03 +09:00
committed by Natsumi
parent 16cd28ebe4
commit b28dec1b99
2 changed files with 50 additions and 41 deletions
@@ -342,6 +342,7 @@
<template <template
v-if="isAgeGatedInstancesVisible || !(room.ageGate || room.location?.includes('~ageGate'))"> v-if="isAgeGatedInstancesVisible || !(room.ageGate || room.location?.includes('~ageGate'))">
<div style="margin: 5px 0"> <div style="margin: 5px 0">
<div class="flex-align-center">
<LocationWorld <LocationWorld
:locationobject="room.$location" :locationobject="room.$location"
:currentuserid="currentUser.id" :currentuserid="currentUser.id"
@@ -378,6 +379,7 @@
:location="room.tag" :location="room.tag"
:instance="room.ref" :instance="room.ref"
:friendcount="room.friendCount" /> :friendcount="room.friendCount" />
</div>
<div <div
v-if="room.$location.userId || room.users.length" v-if="room.$location.userId || room.users.length"
class="x-friend-list" class="x-friend-list"
@@ -1400,3 +1402,10 @@
D.visible = true; D.visible = true;
} }
</script> </script>
<style scoped>
.flex-align-center {
display: flex;
align-items: center;
}
</style>
+5 -5
View File
@@ -16,7 +16,8 @@ import {
hasGroupPermission, hasGroupPermission,
isRealInstance, isRealInstance,
parseLocation, parseLocation,
replaceBioSymbols replaceBioSymbols,
replaceReactiveObject
} from '../shared/utils'; } from '../shared/utils';
import { instanceRequest, userRequest, worldRequest } from '../api'; import { instanceRequest, userRequest, worldRequest } from '../api';
import { database } from '../service/database'; import { database } from '../service/database';
@@ -79,7 +80,7 @@ export const useInstanceStore = defineStore('Instance', () => {
const previousInstancesInfoDialogInstanceId = ref(''); const previousInstancesInfoDialogInstanceId = ref('');
let instanceJoinHistory = reactive(new Map()); const instanceJoinHistory = reactive(new Map());
const currentInstanceUsersData = ref([]); const currentInstanceUsersData = ref([]);
const currentInstanceUsersTable = computed(() => { const currentInstanceUsersTable = computed(() => {
@@ -116,9 +117,8 @@ export const useInstanceStore = defineStore('Instance', () => {
async function getInstanceJoinHistory() { async function getInstanceJoinHistory() {
try { try {
instanceJoinHistory = reactive( const data = await database.getInstanceJoinHistory();
await database.getInstanceJoinHistory() replaceReactiveObject(instanceJoinHistory, data);
);
} catch (error) { } catch (error) {
console.error('Failed to get instance join history:', error); console.error('Failed to get instance join history:', error);
} }