31
最近のフロントエンド よしだあつし@minami.rb

Vue.js ハンズオン資料

  • Upload
    -

  • View
    2.681

  • Download
    6

Embed Size (px)

Citation preview

Page 1: Vue.js ハンズオン資料

最近のフロントエンドよしだあつし@minami.rb

Page 2: Vue.js ハンズオン資料

自己紹介• 名前: 吉田 篤(よしだ あつし)

• 年齢/性別: 31歳/男性

• Twitter: @yalab

• スリーサイズ: 秘密

• 職業: ゲームプログラマ(cocos-2d-x, c++, rails)

• rails contribute数: 2

Page 3: Vue.js ハンズオン資料

jsフレームワーク 戦国時代

Page 4: Vue.js ハンズオン資料

jsフレームワーク戦国時代• Backbone.js

• Angular.js

• Ember.js

• Knockout.js

• Ractive.js and Rivets.js

• vue.js

Page 5: Vue.js ハンズオン資料

なぜこれほどフレームワークが乱立した?

Page 6: Vue.js ハンズオン資料

デファクトが 無いからさ

Page 7: Vue.js ハンズオン資料

一長一短

Page 8: Vue.js ハンズオン資料

一長一短• 高機能だけど習得に時間がかかる?簡単に習得できるけど機能が少ない?

• MVC? MVVM? MVW?

• 大規模向き?小規模向き?

Page 9: Vue.js ハンズオン資料

そもそも js フレームワークって必要?

Page 10: Vue.js ハンズオン資料

要件による

Page 11: Vue.js ハンズオン資料

js フレームワークを 使うと良い点

• jQuery だけだとコードが乱雑になるところがまとまる

• 高機能な事を簡単に実現できる

• Webアプリケーションの作り方の新しい発想が持てる

Page 12: Vue.js ハンズオン資料

jsフレームワークを 使うと悪い点

• 学習コストが要る

• 無駄にアニメーションとかしたくなる

Page 13: Vue.js ハンズオン資料

Web アプリを作る技術者としては扱えたほうがいいのは

間違いない

Page 14: Vue.js ハンズオン資料

そこで今日はvue.jsを 皆様に体験していただきます

Page 15: Vue.js ハンズオン資料
Page 16: Vue.js ハンズオン資料

vue.js?• MVVM の VM を提供

• 双方向データバインディング

• 軽量、高速

Page 17: Vue.js ハンズオン資料

準備$ git clone https://github.com/yalab/try_vue.git

• rails new して

• git 管理して

• rails-assets.org から vue.js をインストールして

• welcome#index を root にして

• bootstrap を適用したもの

Page 18: Vue.js ハンズオン資料

step1. vue.js を読み込む

https://github.com/yalab/try_vue/compare/master...step1

Page 19: Vue.js ハンズオン資料

step1. のポイント• el: にバインディングする DOM ノードを指定する

• data はそのまま出力される

Page 20: Vue.js ハンズオン資料

step2. リスト表示

https://github.com/yalab/try_vue/compare/step1...step2

Page 21: Vue.js ハンズオン資料

step2. のポイント• 繰り返し処理は v-repeat

• @$data に入れたデータは view に出力される

• created: は $el と $data を双方向バインディングする直前に呼ばれる http://vuejs.org/api/instantiation-options.html#created

Page 22: Vue.js ハンズオン資料

step3. 検索

https://github.com/yalab/try_vue/compare/step2...step3

Page 23: Vue.js ハンズオン資料

step3. のポイント• v-model を指定すると vue.js の data として扱われる

• filterBy すごい

Page 24: Vue.js ハンズオン資料

step4. フォーム

https://github.com/yalab/try_vue/compare/step3...step4

Page 25: Vue.js ハンズオン資料

step4. のポイント• v-model を指定したフォームの値は即座に js のオブジェクト(model)と DOM(view) に反映される

• 配列も同様に即座に反映される

Page 26: Vue.js ハンズオン資料

vue.js の用途• 小さなシングルページアプリケーション

• データのプリフェッチをする場合あまりデータ量が多くないアプリケーション

Page 27: Vue.js ハンズオン資料

vue.js の現状• まだβ版(0.10.5)

• vue-router などの機能追加の予定あり

• IE9以上でしか動かない(今後もレガシーブラウザ対応しない)

Page 28: Vue.js ハンズオン資料

js は Web開発者には 必須の言語に(残念ながら)

なりました。

Page 29: Vue.js ハンズオン資料

js 界隈も watch しておくと良いです。 (もう少し圧倒的なデファクトが 出てきたらうれしいのに。)

Page 30: Vue.js ハンズオン資料

js 戦国時代に 取り残されるな!

Page 31: Vue.js ハンズオン資料

ご清聴ありがとう ございました。