js-model は、クライアントサイド Web アプリケーション向けの軽量な JavaScript データモデルライブラリです。
モデルの定義と属性
const User = Model('user', function () {
this.attr('name', String);
this.attr('email', String);
this.attr('admin', Boolean);
this.validate(function () {
if (!this.attr('email')) {
this.errors.add('email', 'is required');
}
});
});
const user = new User({ name: 'Alice', email: '[email protected]' });
user.attr('name'); // "Alice"
user.attr('name', 'Bob'); // updates name
user.isValid(); // true
コレクションと永続化
User.add(user); // インスタンスをコレクションに追加
User.all(); // 全ユーザーの配列を返却
User.find(1); // 主キー ID で検索
User.select(u => u.attr('admin'));// 条件に一致するレコードを抽出