0
私のドメインはかなりシンプルです。私はMessage
クラスとMessagesManager
クラスを持っています。localstorageにオブジェクトを格納する
Message
は、3つの属性があります。
author
message
(ボディ)timestamp
MessagesManager
を、基本的には、メッセージの履歴を保持ちょうどインタフェースである新しいメッセージなどを追加。
私はメッセージをlocalStorage
に保存して、後の時点でそれらを取り出せるようにしたいが、どうやってそれを行うのかは分からない。
class MessagesManager {
constructor() {
this.msgs = []; //retrieve from localStorage
}
add(author, message) {
var msg = new Message(author, message)
this.msgs.push(msg);
}
save() {
// save to localStorage
}
delete() {
this.msgs = [];
}
}
そして、私のMessage
:
class Message {
constructor(author, message) {
this.timestamp = Date.now();
this.author = author;
this.message = message;
}
toString() {
var date = new Date(this.timestamp);
var hours = date.getHours();
var minutes = date.getMinutes();
var seconds = date.getSeconds();
if (hours < 10) hours = "0" + hours;
if (minutes < 10) minutes = "0" + minutes;
if (seconds < 10) seconds = "0" + seconds;
var time = "[" + [hours, minutes, seconds].join(":") + "]";
return time + " " + this.author + ": " + this.message;
}
}
localStorage
に(種類のオブジェクト、など)のメッセージを格納するための素敵な/最良の方法は何ですか、また、それらを簡単に取得することができながら(すなわち。MessagesManager
コンストラクタで)?
この質問には役立つかもしれません:http://stackoverflow.com/questions/2010892/storing-objects-in-html5-ローカルストレージ – camou