Illustration de l'article : lostorage.js - lib de persistance de données plutôt bien écrite

lostorage.js utilise les APIs HTML5 localStorage et sessionStorage pour stocker des données de façon persistantes sur le client.
Il existe d'autres libs qui font de même mais celle-ci a comme avantage :
- la version minifiée fait 2Ko (0.87 gzipée)
- aucune dépendance
- mécanisme de sérialization pour supporter autre choses que les strings
- supporte le chainage
- je trouve le code bien écrit.

Commentaires

Cette librairie n'utilise pas la correctement l'interface Storage [1]. En l'occurence elle ne s'appuit pas sur les méthodes *standardisées* getItem et setItem pour manipuler les objets stockés. Par ailleurs, cette librarie s'octroit le droit de reserver 2 variables globales (storage et session) dont les noms sont, selon moi, bien trop génériques.

[1] http://www.w3.org/TR/webstorage/#the-storage-interface

Il y a plus de 13 ans

C'est vrai que c'est dommage ce pseudo-fallback moisi, parce que dans l'idée, c'est intéressant

Il y a plus de 13 ans

C'est l'occasion de forker et faire un pull request. :-p

Il y a plus de 13 ans

C'est fait ;-)
https://github.com/js-coder/lostorage.js/pull/1

En passant, vous benefierez peut-être d'une correction de bug si l'auteur accepte le pull. Notez que ce bug laisse à penser qu'il n'a pas beaucoup testé son code...

Il y a plus de 13 ans


L'auteur est réactif ! Il a déjà mergé le pull request.

Il y a plus de 13 ans

Apres je suis d'accord avec toi Gildas, il serait préférable d'avoir les objets storage et session encapsulés dans un un nameSpace comme par exemple LoStorage.
( LoStorage.storage et LoStorage.Session )

Comme ça chacun est libre de remaper à sa guise.
Pour ma part se serait :
LSession=LoStorage.session et LStorage=LoStorage.storage

Il y a plus de 13 ans

Après, je vois dans sa roadmap [1] qu'il a prévu de passer son API en AMD [2]. Ca devrait résoudre ce problème définitivement ;-)

[1] https://github.com/js-coder/lostorage.js/wiki/Getting-started
[2] https://github.com/amdjs/amdjs-api/wiki/AMD

Il y a plus de 13 ans

et ben voila !

NB: Merci de faire la lecture pour moi et de me pointer directement sur les truc s intéressants :-)

Il y a plus de 13 ans

De rien, c'est un plaisir :)

Il y a plus de 13 ans
Vous devez vous inscrire ou vous connecter pour poster un commentaire