Vue.jsでページ中の複数の要素をクラスで指定してVueインスタンスを生成するには

Vue.js を試してみました。JavaScriptフレームワークの中でもアプリ全体のフレームワークとしてではなく、jQueryのようにパーツとして使うこともできるので、簡単に試せます。インストール不要で、HTMLにVue.jsをCDNから読み込むscriptタグを書くだけです。

本題

Vueのインスタンスを生成するときにHTMLの要素を指定する必要がありますが、普通はidで指定して次のようにします。

new Vue({ el: "#ELEMENT_ID" })

これをclassで指定しようと思って次のように書くと、このclassに該当する最初の要素に対してしかVue.jsが動作しません。

new Vue({ el: ".ELEMENT_CLASS" })

jQueryも併用していれば、次のように書けばこのclassに該当するすべての要素に対してVueインスタンスを生成させられることに気が付きました。

$(".ELEMENT_CLASS").each(function () {
    new Vue({ el: this })
});

jQueryを使っていなければ querySelectorAll メソッドを使ってもできそうです。

Document.querySelectorAll() - Web APIs | MDN

この方法を見つけたあとに、ページ全体のdivなどの要素でVueインスタンスを1つ作れば十分だと気がついたので、活躍どころはわかりません。