今回はVue.jsのmixin機能を利用して肥大化したViewModelをリファクタリングするお話です。 肥大化してしまった例 Vue.jsを利用して画面全体をVMとして扱ことはよくあると思います。具体的には画面全体を囲むHTML要素のidををコンストラクタに渡すオブジェクトのelに設定することです。 下記の例では#js-appをelとして設定しています。 <div id="js-app" class="app"> <div>野菜検索</div> <div> <input v-model="vegetableName" placeholder="野菜"> </div> <button type="button" @click="searchVegetable">野菜を探す</button> <hr> <div>果物検索</div> <div> <input v-model="fruitsN
![Vue.jsのmixinを利用して肥大化したViewModelをリファクタリングする - 俺、サービス売って家買うんだ](https://cdn-ak-scissors.b.st-hatena.com/image/square/0c179603dbf30d08b54b14e60003a0418265d7b8/height=288;version=1;width=512/http%3A%2F%2Fcdn-ak.f.st-hatena.com%2Fimages%2Ffotolife%2Fi%2Fie-kau%2F20150818%2F20150818232251.png)