angularJSを使用して、インターフェイスを動的にロードするWebアプリを構築しようとしています。
Angular (HTML テンプレート + コントローラー) の最初のブートストラップの後、コードの一部をブートストラップできることがわかりました。私の問題は、そうすることで、双方向のデータバインディングが機能しないことです。自分で見て:
何か案が?私は間違った方法で何かを探していますか?
ありがとう!
angularJSを使用して、インターフェイスを動的にロードするWebアプリを構築しようとしています。
Angular (HTML テンプレート + コントローラー) の最初のブートストラップの後、コードの一部をブートストラップできることがわかりました。私の問題は、そうすることで、双方向のデータバインディングが機能しないことです。自分で見て:
何か案が?私は間違った方法で何かを探していますか?
ありがとう!
あなたの問題はブートストラップの問題ではありません(ただし、ブートストラップを使用してコントローラーをインスタンス化するのではなく、 $compile, imo -この回答を参照してください)。範囲の問題です。コントローラーで「mymodel」モデルを定義しますが、フォームで再度定義すると、angular が独自のスコープを自動的に作成します。フォームのスコープは親スコープから継承されているため、モデルを「バインド」しているように見えますが、逆は起こりません。
両方のスコープ間のバインディングを確立する (またはフォームの変数を $watch するか、隣接するコントローラーで for を定義する) か、必要なコントローラーをフォームに直接割り当てる必要があります。
ここで公開されている問題を確認してください( $timeout は両方のモデルを変更しますが、モデルを手動で設定すると1つだけが変更されることを確認してください)
ここで解決したことを確認してください(基本的に、コントローラーを生成されたフォームに割り当てることにより、フォームの囲み div ではなく)