Api call from component itself and linting.
This commit is contained in:
@@ -2,10 +2,9 @@
|
|||||||
<div class="container">
|
<div class="container">
|
||||||
<h1 class="">Alle viner</h1>
|
<h1 class="">Alle viner</h1>
|
||||||
|
|
||||||
<div id="wines-container">
|
<div class="wines-container">
|
||||||
<Wine :wine="wine" v-for="(wine, _, index) in wines" :key="wine._id">
|
<Wine :wine="wine" v-for="(wine, _, index) in wines" :key="wine._id">
|
||||||
<div class="winners-container">
|
<div class="winners-container">
|
||||||
|
|
||||||
<span class="label">Vinnende lodd:</span>
|
<span class="label">Vinnende lodd:</span>
|
||||||
<div class="flex row">
|
<div class="flex row">
|
||||||
<span class="raffle-element blue-raffle">{{ wine.blue == null ? 0 : wine.blue }}</span>
|
<span class="raffle-element blue-raffle">{{ wine.blue == null ? 0 : wine.blue }}</span>
|
||||||
@@ -20,42 +19,43 @@
|
|||||||
<li v-for="(winner, index) in wine.winners">
|
<li v-for="(winner, index) in wine.winners">
|
||||||
<router-link class="vin-link" :to="`/highscore/` + winner">{{ winner }}</router-link>
|
<router-link class="vin-link" :to="`/highscore/` + winner">{{ winner }}</router-link>
|
||||||
-
|
-
|
||||||
<router-link class="vin-link" :to="winDateUrl(wine.dates[index])">{{ dateString(wine.dates[index]) }}</router-link>
|
<router-link class="vin-link" :to="winDateUrl(wine.dates[index])">{{
|
||||||
|
dateString(wine.dates[index])
|
||||||
|
}}</router-link>
|
||||||
</li>
|
</li>
|
||||||
</ul>
|
</ul>
|
||||||
</div>
|
</div>
|
||||||
</div>
|
</div>
|
||||||
</Wine>
|
</Wine>
|
||||||
|
|
||||||
</div>
|
</div>
|
||||||
</div>
|
</div>
|
||||||
</template>
|
</template>
|
||||||
|
|
||||||
<script>
|
<script>
|
||||||
import Banner from "@/ui/Banner";
|
|
||||||
import Wine from "@/ui/Wine";
|
import Wine from "@/ui/Wine";
|
||||||
import { overallWineStatistics } from "@/api";
|
|
||||||
import { dateString } from "@/utils";
|
import { dateString } from "@/utils";
|
||||||
|
|
||||||
export default {
|
export default {
|
||||||
components: {
|
components: { Wine },
|
||||||
Banner,
|
|
||||||
Wine
|
|
||||||
},
|
|
||||||
data() {
|
data() {
|
||||||
return {
|
return {
|
||||||
wines: []
|
wines: []
|
||||||
};
|
};
|
||||||
},
|
},
|
||||||
|
mounted() {
|
||||||
|
this.overallWineStatistics();
|
||||||
|
},
|
||||||
methods: {
|
methods: {
|
||||||
winDateUrl(date) {
|
winDateUrl(date) {
|
||||||
const timestamp = new Date(date).getTime();
|
const timestamp = new Date(date).getTime();
|
||||||
return `/history/${timestamp}`
|
return `/history/${timestamp}`;
|
||||||
|
},
|
||||||
|
overallWineStatistics() {
|
||||||
|
return fetch("/api/wines")
|
||||||
|
.then(resp => resp.json())
|
||||||
|
.then(response => (this.wines = response.wines));
|
||||||
},
|
},
|
||||||
dateString: dateString
|
dateString: dateString
|
||||||
},
|
|
||||||
async mounted() {
|
|
||||||
this.wines = await overallWineStatistics();
|
|
||||||
}
|
}
|
||||||
};
|
};
|
||||||
</script>
|
</script>
|
||||||
@@ -84,18 +84,6 @@ h1 {
|
|||||||
font-weight: 600;
|
font-weight: 600;
|
||||||
}
|
}
|
||||||
|
|
||||||
#wines-container {
|
|
||||||
display: grid;
|
|
||||||
grid-template-columns: repeat(auto-fit, minmax(250px, 1fr));
|
|
||||||
grid-gap: 2rem;
|
|
||||||
|
|
||||||
|
|
||||||
> div {
|
|
||||||
justify-content: flex-start;
|
|
||||||
margin-bottom: 2rem;
|
|
||||||
}
|
|
||||||
}
|
|
||||||
|
|
||||||
.name-wins {
|
.name-wins {
|
||||||
display: flex;
|
display: flex;
|
||||||
flex-direction: column;
|
flex-direction: column;
|
||||||
|
|||||||
Reference in New Issue
Block a user