どのように新しいエンティティだけでなく、明確な$のanchor.taskを提出するには?
-
22-09-2019 - |
質問
AngularJS のフレームワークを使用して、どのように私は両方 "の送信の" ボタンを持っています現在のエンティティを更新するだけでなく、アンカーIDをクリアする - 私は基本的に矢継ぎ早の追加エントリにしたいが、それは常に編集フォームに私の追加フォームをオンにします。
ここで働いていない私の現在のdivだ、それは$anchor.task=null
を無視しているようだ、それは...
"新規追加のの" ボタンが動作することに注意してくださいファイン!
<div>
Description: <input name="task.desc" ng-required><br>
<a href="#" ng-action="task.$save(); $anchor.task=null">Save</a>
<input type="button" value="Add New" ng-action="$anchor.task=null">
</div>
解決
あなたは速いここに追加したい場合は、
は、
を変更するために必要なものです私はあなたが持っていると仮定します。あなたのコードに=「タスク=タスク」実体ngの。あなたはそれがアンカーに関連付けられていないように、NG-実体=「タスク」に、この宣言を変更することを変更する必要があります。詳細については http://docs.getangular.com/Ng-entity のを参照してください。また、この手動NG-INITでタスクインスタンスをインスタンス化する必要があることを意味します。
次に保存アンカーに使用すると、タスクオブジェクトのデフォルト値を使用してタスクのドキュメントをインスタンス化する必要があります:タスク(タスク)
あなたはそれを保存するために必要以上:タスク(タスク)$セーブ()
最後に、あなたが空白にタスクオブジェクトをリセットする必要がありますので、フォームをクリアしたいです。オブジェクトはあなたが$ save()メソッドへのコールバックを含める必要があるので、保存した後にのみ行うことができます。 タスク(タスク)を保存$({:$ root.task = {};})
コールバック内のスコープは、タスクが宣言されたスコープと同じではないとして、$ルートは、ルートスコープを指します。
<div ng-entity="Task" ng-init="task={}">
Description: <input name="task.desc" ng-required><br>
<a href="#" ng-action="Task(task).$save({: $root.task={} })">Save</a>
</div>
所属していません StackOverflow