AngularJS使い方ガイド Model編

Model編では掲示板アプリのデータ構造を定義しmoduleを設定する

json形式のデータ構造をjavascriptで定義

入門編に続いてModel編になる。

Model編でもAngularJSの使い方入門編同様、AngularJSの機能について直接ふれることはほとんど無い。しかし、掲示板アプリのサンプルデータをどのように定義するのか書いてみる。AngularJSの機能を利用してサンプルデータをどのように利用し、どのようにデータが変化していくのかイメージできるようになることを目的としたエントリーである。

サンプルデータを下のように定義した。

var model = {
	title: "メジャーリーグと日本の野球について",
	answers: [
		{ body: "大リーグはおもしろい", tree: false },
		{ body: "イチローとマー", tree: false },
		{ body: "日米野球摩擦", 
			tree: [
				{ response: "Goodbye baseball", tree: false },
				{ response: "イチローのファインプレー", tree: false },
				{ response: "ピッチャーのベースカバー", tree: false }
			] },
		{ body: "野茂のトルネード", tree: false }
	]
};

入門編ではmodel変数を空として定義したが、その変数に実データを投入したのが上の状態になる。掲示板のスレッドタイトルとそのスレッドに寄せられた回答、そして回答に付いたレスポンスというやや深い構造のデータを定義してみた。

このmodelというデータを利用してanswersを追加したり、responseを追加したりというデータ操作をController編では行う。

データ構造を定義したただけなので、上のコードを追加してブラウザを更新しても見た目が変わることは無い。しかし、

console.log(model);

とすることで、ブラウザのjsインスペクタを利用してデータを表示させることができる。

console.log(model.toSource());

とすれば、よりデータ全体を見やすく表示することができる。

angular.moduleの設定

Controller編では、モデルデータを操作するためのコードを書いていくわけだが、その前にAngularJSのmodule設定が必要になる。module設定は以下のコードを追加することで可能。

var bbsApp = angular.module("bbsApp", []);

moduleの設定をすることでController用のコードを書くことができるようなる。Controllerだけでなく、

  • factory
  • service
  • value
  • constant
  • filter
  • directive

などの

Angular Method

を利用したコードを書くことができる。

module設定をしたら、HTMLのソースコードの先頭を付近にあるhtmlタグにng-appディレクティブを追加してModel編を終了とする。

<html ng-app="bbsApp">

Controllerを追加していくための準備が整った。Controllerの使い方

AngularJS使い方ガイド一覧

Webエンジニアブログにコメント

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

AngularJS使い方ガイド Model編の記事にコメントを投稿