0

angularJSを使用して、インターフェイスを動的にロードするWebアプリを構築しようとしています。

Angular (HTML テンプレート + コントローラー) の最初のブートストラップの後、コードの一部をブートストラップできることがわかりました。私の問題は、そうすることで、双方向のデータバインディングが機能しないことです。自分で見て:

http://plnkr.co/edit/MtAWP6

何か案が?私は間違った方法で何かを探していますか?

ありがとう!

4

2 に答える 2

1

あなたの問題はブートストラップの問題ではありません(ただし、ブートストラップを使用してコントローラーをインスタンス化するのではなく、 $compile, imo -この回答を参照してください)。範囲の問題です。コントローラーで「mymodel」モデルを定義しますが、フォームで再度定義すると、angular が独自のスコープを自動的に作成します。フォームのスコープは親スコープから継承されているため、モデルを「バインド」しているように見えますが、逆は起こりません。

両方のスコープ間のバインディングを確立する (またはフォームの変数を $watch するか、隣接するコントローラーで for を定義する) か、必要なコントローラーをフォームに直接割り当てる必要があります。

ここで公開されている問題を確認してください( $timeout は両方のモデルを変更しますが、モデルを手動で設定すると1つだけが変更されることを確認してください)

ここで解決したことを確認してください(基本的に、コントローラーを生成されたフォームに割り当てることにより、フォームの囲み div ではなく)

于 2012-12-08T03:45:02.673 に答える
0

ルーティング/ディープリンクをもう一度検討する必要があると思います。テンプレートの URL とコントローラーの両方を指定できるはずです。

このビデオをチェックしてください

そしてAPIドキュメント

于 2012-12-08T01:03:27.420 に答える