【问题标题】:How to submit new entity as well as clear $anchor.task?如何提交新实体以及清除 $anchor.task?
【发布时间】:2009-10-19 11:41:47
【问题描述】:

使用AngularJS 框架,我如何让“提交”按钮既更新当前实体又清除锚 ID - 我基本上想快速添加条目,但是它总是将我的添加表单变成编辑表单。

这是我当前的 div 不起作用,就像它忽略了 $anchor.task=null...

请注意,“Add New”按钮可以正常工作!

<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>

【问题讨论】:

    标签: javascript web-applications angularjs


    【解决方案1】:

    如果您想快速添加,这里是您需要更改的地方

    我假设您的代码中有:ng-entity="task=Task"。您需要将其更改为 ng-entity="Task" 这会更改声明,使其不与锚相关联。有关详细信息,请参阅http://docs.getangular.com/Ng-entity。这也意味着您必须在 ng-init 中手动实例化任务实例。

    然后在保存锚点中,您需要使用任务对象的默认值来实例化任务文档:Task(task)

    你需要保存它:Task(task).$save()

    最后您要清除表单,因此您需要将任务对象重置为空白。这只能在对象保存后完成,因此您需要包含对 $save() 方法的回调: 任务(任务).$save({: $root.task={};})

    $root 指的是根作用域,因为回调内部的作用域与声明任务的作用域不同。

    <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>
    

    【讨论】:

      猜你喜欢
      • 2013-04-11
      • 1970-01-01
      • 1970-01-01
      • 1970-01-01
      • 1970-01-01
      • 1970-01-01
      • 2023-03-22
      • 2011-08-18
      • 1970-01-01
      相关资源
      最近更新 更多