Virtual DOM がアツい昨今ですが、virtual DOM は特に Reactやdekuのようなコンポーネントライブラリの実装に使われているということで注目を集めています。 一方、virtual DOM自体は概念にすぎないので、それを独立して実装しているvirtual-domなどのライブラリもあります (以前の記事で書きました)。 そこで、その virtual-dom をベースにReactのようなコンポーネントライブラリを自作してみるのも興味深いと思い試してみました。 作ったものの概要 seanchas116/decompose virtual-dom ベース ビューと状態を一つにまとめたコンポーネント 簡単化のためにstates/propsの区別はなし 同じ場所/移動しているが同じキー の時は同一コンポーネントがそのまま生き残る 各コンポーネントごとに独立してdiff/patch