Corset
CorsetはCSSライクに書けるオープンソースのデータバインディングJavaScriptライブラリです。CSSライクな構文を使ってコンテンツを拡張する事が出来ます。
CSSライクに書けるJS、と言われてもピンと来ない方も少なくないと思いますが、コードを見れば一目瞭然です👇
import sheet, { mount } from 'https://cdn.corset.dev/v1';
mount(document, class {
count = 0;
bind() {
const { count } = this;
return sheet`
.counter {
--count: ${count};
--inc: ${() => this.count = count + 1};
--dec: ${() => this.count = count - 1};
}
.count {
text: var(--count);
}
.increment {
event[click]: var(--inc);
}
.decrement {
attr-toggle[disabled]: ${count === 0};
event[click]: var(--dec);
}
`;
}
});
CSS変数を書く要領で手軽にDOMにバインドする事が出来ます。最初は戸惑うかもしれませんが、元々CSSを書きなれている方ならすぐに書けるようになると思います。
需要の有無は分かりませんがユニークな方法だと思ったので備忘録として。ライセンスはBSD-2-Clauseです。
