software:angularjs
差分
このページの2つのバージョン間の差分を表示します。
両方とも前のリビジョン前のリビジョン次のリビジョン | 前のリビジョン | ||
software:angularjs [2014/01/20 01:53] – dot | software:angularjs [2015/06/17 05:21] (現在) – 外部編集 127.0.0.1 | ||
---|---|---|---|
行 2: | 行 2: | ||
AngularJS | AngularJS | ||
- | ====== | + | ====== |
===== データバインディング ===== | ===== データバインディング ===== | ||
+ | |||
+ | 双方向データバインディングが内包されている。 | ||
+ | |||
+ | データバインディングはController側の$scopeにバインドしたい変数を置き、View側に「ng-controller」を記載することでシームレスに行われる。 | ||
+ | |||
+ | View側で値が変わった場合に任意の処理を呼び出す方法として $scope.$watch が提供されている。 | ||
+ | |||
+ | |||
+ | |||
===== ディレクティブ ===== | ===== ディレクティブ ===== | ||
+ | |||
+ | いわゆるカスタムタグの仕組み。 | ||
+ | |||
+ | 新たにタグを作成することもできるし、任意のタグに新たな属性を持たせることができる。 | ||
+ | |||
+ | タグにディレクティブが指定されると、対応するクラスが呼ばれ、任意の出力や任意の処理を行う。 | ||
+ | |||
===== ルーティング ===== | ===== ルーティング ===== | ||
+ | |||
+ | デフォルトでは ngRoute を使用する。 | ||
+ | |||
+ | 複雑な画面遷移を行う場合には AngularUI.Router を使うほうが良い。 | ||
+ | ステートマシンが表現できるからである。 | ||
+ | |||
===== ディープリンク ===== | ===== ディープリンク ===== | ||
- | ===== 再利用可能なコンポーネント ===== | ||
===== 依存注入 ===== | ===== 依存注入 ===== | ||
===== テスト手法 ===== | ===== テスト手法 ===== | ||
+ | ユニットテストのランナーには karma を使用するのがスタンダード。 | ||
+ | karma はランナーであるため、ユニットテストフレームワークは別途必要。 | ||
+ | Jasmine, Mocha など複数あるが、 BDDとTDDの両方に対応している点でMocha(chai) を推奨したい。 | ||
+ | |||
+ | e2eテストには protractor の使用を推奨する。 | ||
+ | protractor もランナーであるため、テストフレームワークは別途必要。 | ||
+ | ユニットテストと同じにするため Mocha(chai) を推奨したい。 | ||
====== フォーム ====== | ====== フォーム ====== | ||
行 30: | 行 58: | ||
====== REST API 通信 ====== | ====== REST API 通信 ====== | ||
+ | |||
+ | Restangular を使用することでAPIアクセスクラスを単一にできる。 | ||
+ | Restangularは「getAll」「getById」といったメソッドを提供する。 | ||
====== トランザクション ====== | ====== トランザクション ====== | ||
===== 画面またぎ ===== | ===== 画面またぎ ===== |
software/angularjs.1390182837.txt.gz · 最終更新: 2015/06/17 05:12 (外部編集)