skillup

技術ブログ

JavaScript

Angular複数ファイルでの読み込み

投稿日:

Angularでいろいろな処理を書いているんですが、処理が膨らんでくると1つのファイルに全ての処理を書いていては当然非効率になります。

ざっくり分けると

  • ほとんどの処理に共通な処理を集めたファイル
  • 特定の画面に特化したファイル

になるでしょう。物凄くざっくり分けた場合ですが・・・

プログラムでは上記のように書き、役割分担をすることが当たり前になっていますが、JSでも近年でそのようなことをするのが一般的なようですね。

このためにはコントローラー自体を分割することが重要になってきます。

今ファイルを親コントローラー(parentController)、子コントローラ(childController) ,モジュール登録(app.js)に分けるとします。

parent.controller.js

child.controller.js

app.js

HTML

今までと違うところは関数を変数化し、一番最後のファイルapp.jsで最後にControllerの登録とモジュール作成を行っています。上記のようなControllerの登録の仕方によって親子関係が決まります。子供は親を呼べますが、親は子の変数やメソッドをよぶことができません。

またHTMLでControllerで制御している外は当然影響範囲外になります。

参考図書

AngularJSリファレンス

以前立ち読みした時点ではボコボコだったんですが、今の段階で読むとわかる部分がかなり増えてました。多少古いですが(2014/09)かなりまとまっており、いい本だと思います。

-JavaScript
-

執筆者:


  1. […] Angularで以前こちらで、複数のコントロールに分ける方法を書きましたが、コントローラーだけでなく、Factory,ServiceなどいろいろなタイプのサービスがAngularにはあります。 […]

comment

メールアドレスが公開されることはありません。 * が付いている欄は必須項目です

関連記事

no image

オートコンプリートのプラグイン

最近だとフォームの入力画面で最初の数文字を入力すると候補を予測して表示してくれる機能(=オートコンプリート)があることが一般的ですね。 いろいろなプラグインがありますが、今回お勧めしたいのはBoots …

no image

HTML&JSなど画面まわり&サーブレット小ネタ

サーブレットでアプリ作ってますが、画面まわりに関していろいろいじっているのでそこら辺のネタなんかを。 Contents1 テーブルの結合2 JSPでの動的HTML→POSTで認識できない3 動的プルダ …

no image

JavaScriptでのオブジェクト指向 クラス作成&インスタンス生成

JavaScriptというと一般的にはjQueryを使って画面の装飾をするスクリプト言語という認識が一般的かと思います。 しかし、JavaScriptでもPHPなどのようにオブジェクト指向的な思想は実 …

no image

モジュールバンドラparcelについて

現在のフロントエンドだと、es6以降の書き方が主流になっていることもあり、一度慣れてしまうとなかなか戻れない便利さがあります。 私の場合、設定が面倒だったり、Chromeではトランスパイルしなくても動 …

no image

jQueryの書き方について

jQueryの書き方は一般的に以下のように書きます。

上記の処理ですが、細かく書くとDOMが構築されてから実行という意味が含まれていま …