From a936b7f766c785f98e0b1a9603b45f9e31581ac5 Mon Sep 17 00:00:00 2001 From: Spythere Date: Tue, 9 Aug 2022 00:33:15 +0200 Subject: [PATCH] =?UTF-8?q?Karta=20losowania:=20usprawniono=20podgl=C4=85d?= =?UTF-8?q?=20wagon=C3=B3w?= MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit --- src/components/RandomizerCard.vue | 29 ++++++++++++++++++----------- 1 file changed, 18 insertions(+), 11 deletions(-) diff --git a/src/components/RandomizerCard.vue b/src/components/RandomizerCard.vue index 9cd543e..962c152 100644 --- a/src/components/RandomizerCard.vue +++ b/src/components/RandomizerCard.vue @@ -47,14 +47,10 @@ WYBIERZ POJAZD LUB WAGON, BY ZOBACZYĆ JEGO PODGLĄD - {{ randomFocusedWagonVariant.type }} (1 z {{ focusedCarWagon!.availableCars.length }}) + + {{ randomFocusedWagonVariant.type }} (1 z {{ focusedCarWagon!.availableCars.length }}) + - - @@ -197,6 +193,20 @@ export default defineComponent({ randomFocusedWagonVariant: undefined as ICarWagon | undefined, }), + watch: { + 'focusedCarWagon.availableCars': { + handler(cars?: RandomStockCarWagon['availableCars'], prevCars?: RandomStockCarWagon['availableCars']) { + const prevAvailableCarsStr = prevCars?.map((car) => car.type).join(',') || ''; + const availableCarsStr = cars?.map((car) => car.type).join(',') || ''; + + if (prevAvailableCarsStr != availableCarsStr) { + this.randomFocusedWagonVariant = + this.focusedCarWagon?.availableCars[~~(Math.random() * this.focusedCarWagon.availableCars.length)]; + } + }, + }, + }, + computed: { allCarOptionsList() { const list: string[] = []; @@ -235,15 +245,12 @@ export default defineComponent({ carWagon.chosenCargo = undefined; } - this.onCarWagonTypeFocus(carWagon); + // this.onCarWagonTypeFocus(carWagon); }, onCarWagonTypeFocus(carWagon: RandomStockCarWagon) { const prevVariantsCount = this.focusedCarWagon?.availableCars.length || 0; - console.log(prevVariantsCount); - - this.focusedCarWagon = carWagon; if (prevVariantsCount != carWagon.availableCars.length)