LeagueStats/client/src/views/Summoner.vue

56 lines
1.4 KiB
Vue
Raw Normal View History

2019-03-30 22:55:48 +00:00
<template>
<div class="mt-3 flex">
<div class="mt-4 w-3/12">
<SummonerChampions />
<SummonerStats />
<SummonerMates />
</div>
<div class="w-9/12">
<ul>
<Match
v-for="(match, index) in summonerInfos.matches"
:key="index"
:data="summonerInfos.matches[index]"
/>
</ul>
<LoadingButton
v-if="moreMatchesToFetch"
@clicked="moreMatches"
:loading="matchesLoading"
btn-class="mt-4 block mx-auto bg-blue-800 px-4 py-2 rounded-md font-semibold hover:bg-blue-1000 shadow-lg"
>More matches</LoadingButton>
</div>
2019-03-30 22:55:48 +00:00
</div>
</template>
2019-03-30 22:55:48 +00:00
<script>
2019-09-11 20:02:05 +00:00
import { mapState, mapActions, mapGetters } from 'vuex'
import LoadingButton from '@/components/LoadingButton.vue'
import Match from '@/components/Match/Match.vue'
import SummonerChampions from '@/components/Summoner/Overview/SummonerChampions.vue'
import SummonerMates from '@/components/Summoner/Overview/SummonerMates.vue'
import SummonerStats from '@/components/Summoner/Overview/SummonerStats.vue'
2019-03-30 22:55:48 +00:00
export default {
components: {
LoadingButton,
2019-04-08 20:06:22 +00:00
Match,
SummonerChampions,
SummonerMates,
SummonerStats,
2019-03-30 22:55:48 +00:00
},
2019-08-23 14:48:16 +00:00
2019-04-07 17:44:01 +00:00
computed: {
2019-09-08 20:08:49 +00:00
...mapState({
2019-09-14 14:10:49 +00:00
summonerInfos: state => state.summoner.infos
2019-09-11 20:02:05 +00:00
}),
...mapGetters('summoner', ['matchesLoading', 'moreMatchesToFetch'])
2019-08-23 14:48:16 +00:00
},
2019-03-30 22:55:48 +00:00
methods: {
...mapActions('summoner', ['moreMatches']),
2019-03-30 22:55:48 +00:00
}
2019-08-23 14:48:16 +00:00
}
2019-03-30 22:55:48 +00:00
</script>