Я работаю над проектом с использованием карт, чтобы показать пользователю "юниверс", в который они могут войти.
Фактически, пользователь может быть администратором в данной юниверсе, и он может быть просто один игрок на другом, вот пример.
![A normal case](https://i.stack.imgur.com/L4X2w.jpg)
Здесь пользователь получил корону и корзину рядом с «Test Realm», так что он админ, и он постоянный игрок "Royaume de test". Когда вы создаете сервер, на котором вы становитесь администратором, он автоматически попадает на верх всех остальных серверов.
Произошли две вещи, которые сделали его немного глупым.
![Empty](https://i.stack.imgur.com/b3f1f.jpg)
Здесь, в этом случае, пользователь только что подключился, и результаты его области не отображаются. Этот случай решается с помощью кнопки «Rechargez le contenu», которая помогает перезагрузить контент, но ...
![Big big problem are here](https://i.stack.imgur.com/eQc0L.jpg)
UserTest подключился в другой раз , но на этот раз карты просто загружают его в качестве администратора "Royaume de test", но у него даже нет прав на него. Но так как он может нажать на корону, которая связана с царством, он имеет власть на всем и может даже разрушить мир, который он не создал.
Так вот моя проблема, я использую метод, который выполняет вызов ax ios, заканчивающийся на Promise, но я не вижу, где я ошибаюсь
fillCards: function(){
let tempCard = []
if(this.CardsLogData == 0){
axios.get(XXXXXXXXXXX)
.then(async (response) => {
for(let universe of response.data){
axios.get(XXXXXXXXXX)
.then(response =>{
tempCard.push(response.data)
console.log('recupCard', tempCard)
})
.catch(function (error) {console.log(error);})
}
Promise.all(tempCard)
.then((res) => {
axios.get(XXXXXXXXXXXXX)
.then(response=>{
for(let i in response.data){
tempCard[i].idRight = response.data[i].idRights
}
this.cards = tempCard;
})
.catch(function (error) {console.log(error);})
})
.catch(function (error) {console.log(error);})
})
.catch(function (error) {console.log(error);})
}
},
Метод вызывается на смонтированном
XXXXXXX просто вещи, которые я не хочу публиковать c ^^ '
И вот как корона и мусорное ведро отображаются вдоль карты.
<b-card
bg-variant="dark"
text-variant="white"
class="text-center mb-2"
v-for="value in cards"
v-bind:key="value.idUniverse">
<b-card-text>{{ value.name }} {{ value.firstname }} {{ value.lastname }}</b-card-text>
<img class="logocrown" v-if="value.idRight == 1" src="./../assets/crown.png" v-on:click="goAdmin(value.idUniverse, value.name)"/>
{{ value.idRights }}
<b-button href="#" variant="primary" v-if="CardsLogData<=0" v-on:click="cardsAction(value.idUniverse)">{{ CardMessage }}</b-button>
<img class="logogarb" v-if="value.idRight == 1" src="./../assets/garbage.png" v-on:click="destroy(value.idUniverse)"/>
<b-button href="#" variant="primary" v-if="CardsLogData==1" v-on:click="cardsAction(value.idCharacters)">{{ CardMessage }}</b-button>
</b-card>
Я не могу чтобы понять, в чем проблема, я все еще могу сделать проверку, как только пользователь попадет в панель администратора, чтобы проверить, действительно ли он является администратором текущей юниверса, которую он использует, но это немного "гетто", я предпочитаю это делать, плюс найти способ не получить права администратора в юниверсе, которые пользователь не должен.