Snažím se nastavit tlačítko, které změní hodnotu data v Vue, ale také si to nastavit pomocí localStorage initally. Tento způsob, jak mohu to udržet předchozího stavu, který byl předtím aktualizovat stránku. Níže je kód, používám a jsem schopen se dostat do práce, ale vím, že by bylo vhodnější použít vypočítaný bod, ale nebyl schopen se dostat, že pracovat správně.
Chtěl by někdo vědět, co se děje špatně?
Moje tlačítko je spuštěna pomocí zkušební metody a proměnné v otázce je isGrid.
export default {
data() {
return {
option: 'default',
}
},
components: {
FileUploader,
},
mixins: [
visibilitiesMixin,
settingsMixin
],
props: {
vehicleId: {
type: Number,
required: true,
default: null,
}
},
computed: {
...mapState([
'isLoading',
'images',
'fallbackImageChecks',
'selectedImages'
]),
isGrid: {
get() {
return localStorage.getItem('isGrid');
},
},
imagesVModel: {
get() {
return this.images;
},
set(images) {
this.setImages(images);
}
},
selectedImagesVModel: {
get() {
return this.selectedImages;
},
set(images) {
this.setSelectedImages(images);
}
},
removeBgEnabled() {
return this.setting('nexus_integration_removebg_enabled') === 'enabled';
},
},
mounted() {
this.loadImages(this.vehicleId);
},
methods: {
testing() {
if (this.isGrid === 'false' || this.isGrid === false) {
localStorage.setItem('isGrid', true);
this.isGrid = true;
console.log(this.isGrid);
console.log(localStorage.getItem('isGrid'));
} else {
localStorage.setItem('isGrid', false);
this.isGrid = false;
console.log('b');
console.log(this.isGrid);
console.log(localStorage.getItem('isGrid'));
}
},
}