Upgrade to Pro — share decks privately, control downloads, hide ads and more …

この素晴らしい Vue.js に祝福を!

この素晴らしい Vue.js に祝福を!

Vue.js Tokyo v-meetup="#3" での発表資料です。

Hideyuki Takeuchi

March 16, 2017
Tweet

More Decks by Hideyuki Takeuchi

Other Decks in Programming

Transcript

  1. Vue.js 遍歴 2015 年頭ぐらいからv0.11 をさわり始め、 2015 年中頃からプロダクトに導入 NewsPicks 広告出稿・ 分析画面

    (2015 年~) SPA として作成 SPEEDA 統計・ 財務デー タ入力画面 (2016 年~) 新規プロダクト ( 未リリー ス 2017 年~) SPA として作成 vue 2.2 + vuex + vue-router + axios + babel @chimerast 4
  2. 今日のお題: E2D3 と Vue.js Excel にデー タを入力すると D3.js とかでビジュアライズして 表示してくれるExcel

    アドイン E2D3 主催の五十嵐さんが Vue.js ドキュメントの日本語訳にも 関わっている( らしい) E2D3 ではVue.js をカジュアルに使用 @chimerast 5
  3. E2D3 もろもろ オー プンソー スでGitHub 上で開発してます グラフテンプレー ト数: 93 種

    GitHub Contributor: 41 人 アクティブメンバー: 51 人 ( 幽霊部員含めると100 人超え) エンジニア界隈ではなく、 オー プンデー タ界隈での活動が活発 もくもく会とかハッカソンとかよくやってます いろいろ賞を受賞しています @chimerast 14
  4. 昔は D3.js と jQuery でがんばってた setupGrid = () -> d3.select

    '#contrib' .selectAll 'div' .data charts .enter().append 'div' .classed 'col-xs-4', true .each (d, i) -> newcell = d3.select(cell.cloneNode(true)) baseUrl = e2d3.util.baseUrl d.path newcell.select '.cover' .style 'background-image', "url('#{baseUrl}/thumbnail.png')" .select '.title' .text d.title ... @chimerast 19
  5. Vue.js 導入後: CoffeeScript new Vue el: 'body' data: charts: []

    ready: -> e2d3.api.topcharts() .then (charts) => @charts = charts components: chart: data: () -> readme: '' computed: baseUrl: -> e2d3.util.baseUrl(this.path) cover: -> @baseUrl + '/thumbnail.png' link: -> "chart.html##{@path},#{@scriptType},#{@dataType}" @chimerast 23
  6. Vue.js 導入後: Pug(Jade) #contrib.row.grid(v-cloak) div(v-component='chart', v-repeat='charts', inline-template) .col-xs-4 figure .outer

    .inner.cover(v-style="background-image: 'url(' + cover + ')'") .title {{title}} figcaption .action a.btn.btn-sm.btn-visualize(href='{{link}}') i.fa.fa-bar-chart | Visualize .readme {{{readme}}} @chimerast 24
  7. まとめ Vue.js はカジュアルにも使える コンポー ネントとか作らず1 画面内で使う Vue.js はガチにも使える vue +

    vuex + vue-router + axios + babel コンポー ネントをバリバリ作成 学習曲線はわりと理想だと思う 最近の MS Of ce は HTML と JS でアドインが書けるよ @chimerast 30