AngularJSを他のJavaScript-MVCフレームワークと区別することの1つは、バインディングを使用してJavaScriptからHTMLへのバウンド値をエコーする機能です。 Angularは、$ scope変数に値を代入すると、これを「自動的に」行います。AngularJSでの結合と消化はどのように機能しますか?
これはどのように自動ですか?場合によっては、Angularは変更を認識しないので、$ scopeを呼び出す必要があります。$ apply()または$ scope。$ digest()ときどきこれらのメソッドのいずれかを実行すると、エラーがスローされ、ダイジェストがすでに進行中であることが示されます。
括弧({{}}中か何かの中かっこ)はevalでエコーされるので、Angularは$ scopeオブジェクトを常にポーリングして変更を探し、その変更をプッシュする評価を実行します。 DOM/HTMLに?または、AngularJSは、変数値が変更されたときや割り当てられたときにトリガされるイベントを発生させる魔法の使用変数を何とか見つけ出しましたか?私はそれがすべてのブラウザによって完全にサポートされていることは聞いたことがないので、私はそれを疑う。
AngularJSは、そのバインディングとスコープ変数をどのように記録していますか?
「これは、Hello Worldの例でデータバインディング効果がどのように達成されたかの説明です。」で始まるhttp://docs.angularjs.org/guide/concepts#runtimeのセクションが見つかりました。 –
この投稿はあなたがまだ見ていない場合にも役立ちます:http://stackoverflow.com/questions/9682092/databinding-in-angularjs/9693933#9693933 – Gloopy
最初の宣言的な段落についてのコメント:Angularの " JavaScriptからバインディングを使用したHTMLへの値」は、「データバインディング」と言うと混乱するように思えます。そして、現時点ではAngberをEmberやReactのような他のフレームワークとは別に設定していません。 質問は役に立ちます、間違ってはいけません。しかし、最初の段落は私が意見に反すると思うだけの意見です - 私は質問を編集するが、私は十分に権威的だとは思わない。 –