Wie lange werden die Daten gespeichert in localStorage
(als Teil der DOM-Speicherung in HTML5) verfügbar? Kann ich eine Verfallszeit für die Daten festlegen, die ich in den lokalen Speicher lege?
Antworten
Zu viele Anzeigen?Der Ansatz von @sebarmeli ist meiner Meinung nach der beste, aber wenn Sie die Daten nur für die Dauer einer Sitzung aufrechterhalten wollen, dann sessionStorage
ist wahrscheinlich eine bessere Option:
Dies ist ein globales Objekt (sessionStorage), das einen Speicherbereich verwaltet der für die Dauer der Auslagerungssitzung verfügbar ist. Eine Seitensitzung dauert so lange, wie der Browser geöffnet ist, und überdauert die Seite Neuladen und Wiederherstellen der Seite. Das Öffnen einer Seite in einer neuen Registerkarte oder einem neuen Fenster führt zu wird eine neue Sitzung eingeleitet.
Umgehung mit Angular und Localforage:
angular.module('app').service('cacheService', function() {
return {
set: function(key, value, expireTimeInSeconds) {
return localforage.setItem(key, {
data: value,
timestamp: new Date().getTime(),
expireTimeInMilliseconds: expireTimeInSeconds * 1000
})
},
get: function(key) {
return localforage.getItem(key).then(function(item) {
if(!item || new Date().getTime() > (item.timestamp + item.expireTimeInMilliseconds)) {
return null
} else {
return item.data
}
})
}
}
})
- See previous answers
- Weitere Antworten anzeigen