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

AngularJSでのComponent指向

 AngularJSでのComponent指向

ng-kyoto Meetup Kyoto #1

imashin

June 19, 2015
Tweet

More Decks by imashin

Other Decks in Programming

Transcript

  1. + AngularJS n Data Binding n Template Engine n Ajax Support n Routing n Test

    n Security 今⽇日のメインテーマ <my-template></my-template>
  2. +

  3. + Custom Directive化の指針 1.  one Function in one Directive 2. 

    Reusable or not 3.  No logic code 4.  Independence
  4. + one Function in one Directive n one Function in one

    Directive n Componentに明確な役割を1つ n その役割に合わせて要素の命名 <im-navbar></im-navbar> < {{プロジェクト接頭語}} – {{役割}} > <data-im-navbar></data-im-navbar> 1
  5. + one Function in one Directive 1 n 保守性があがる n 役割が明確になる n コードが短くなる

    n 読みやすくなる n テストしやすい n 誰が書いてもだいたい同じ物
  6. + one Function in one Directive 1 n 例例えば  navigation bar

    の場合 n <im-navbar></im-navbar> n これはナビバーの複数のDirectiveを 内包するDirective
  7. + one Function in one Directive 1 n 例例えば  navigation bar

    に含まれる検 索索Directiveの場合 n <sk-search></sk-search> n これの役割はinputをServiceに伝える
  8. + Reusable or not n Reusable or not n 再利利⽤用可能なものって結構少ない。 n Ex) ナビバー、ボタン、パネル、ア

    イコン etc… n 再利利⽤用可能な物って作るの難しい。 n 再利利⽤用可能ってもうライブラリ 2
  9. + Reusable or not <sk-messages> </sk-messages> <sk-message></sk-message> <sk-message></sk-message> <sk-message></sk-message> <sk-message></sk-message>

    <sk-message></sk-message> <sk-message></sk-message> <sk-message></sk-message> <sk-message></sk-message> <sk-message></sk-message> 2 ng-repeat