Baru-baru ini, semasa membangunkan projek bahagian hadapan berdasarkan rangka kerja Vue, saya menemui masalah: apabila digunakan dalam mod inkognito (atau privasi), data pada halaman akan keliru atau gagal dimuatkan.
Selepas penyiasatan, kami mendapati bahawa penyemak imbas melumpuhkan cache dan kuki dalam mod inkognito, dan rangka kerja Vue kami menggunakan pemalam Vuex untuk mengurus status data, yang menggunakan cache Storan setempat untuk menyimpan data . Ini mengakibatkan beberapa keadaan data tidak disimpan dengan betul, atau dipadamkan secara tidak betul.
Jadi, bagaimana untuk menyelesaikan masalah ini?
Penyelesaian pertama ialah menggunakan sessionStorage untuk menggantikan localStorage untuk menyimpan data. sessionStorage ialah storan tempatan berasaskan sesi, dan data yang disimpan akan dipadamkan secara automatik selepas menutup tetingkap penyemak imbas. LocalStorage ialah sejenis storan tempatan kekal Selepas penyemak imbas ditutup, data yang disimpan akan tetap wujud. Oleh itu, menggunakan sessionStorage boleh mengelakkan masalah kekeliruan data dalam mod inkognito.
Penyelesaian kedua ialah mengubah suai kaedah penyimpanan pemalam Vuex. Kita boleh menambah pertimbangan dalam logik storan pemalam Vuex Apabila penyemak imbas berada dalam mod inkognito, gunakan cache memori untuk menyimpan data dan bukannya localStorage. Dengan cara ini, kami masih boleh mengekalkan ketepatan keadaan data.
Selain daripada dua kaedah di atas, terdapat beberapa penyelesaian lain, seperti menggunakan IndexedDB dan bukannya localStorage, menggunakan penyelesaian hibrid sessionStorage dan IndexedDB, dsb. Penyelesaian yang berbeza sesuai untuk senario yang berbeza, dan pembangun boleh memilih penyelesaian yang sesuai mengikut keperluan khusus mereka.
Ringkasnya, masalah kekeliruan data dalam mod inkognito bukanlah masalah dengan rangka kerja Vue, tetapi disebabkan oleh sekatan penyemak imbas pada cache dan kuki. Kita boleh menggunakan penyelesaian yang berbeza untuk menyelesaikan masalah ini. Tidak kira penyelesaian yang digunakan, kami harus memastikan bahawa status data kami adalah betul dalam apa jua keadaan.
Atas ialah kandungan terperinci Apakah yang perlu saya lakukan jika mod inkognito menyebabkan kekeliruan data Vue?. Untuk maklumat lanjut, sila ikut artikel berkaitan lain di laman web China PHP!