角度:视图形式中的if / else语句

时间:2019-06-20 02:54:32

标签: javascript angular

我是这个东西的新手。我正在处理的不是我的代码...

我的视图具有:

<form (ngSubmit)="submitCreateForm()">

我还有一个可以使用的变量,叫做type,其值为addedit

如何定义2种方法submitCreateFormsubmitUpdateForm

如果类型为<form>或类型为submitCreateForm时为add,如何修改submitUpdateForm中的ngSubmit以调用edit

我知道这听起来很琐碎,但是语法对我来说却很复杂。理想情况下,我正在寻找有条件的单行。

4 个答案:

答案 0 :(得分:1)

在后端,您可以处理此问题,您可以始终调用SubmitForm()

<form (ngSubmit)="submitForm()">

让commitForm()函数将根据类型

决定要调用的提交
 submitForm() 
 {
      if(this.type==="add"){
       this.submitCreateForm();
      }
      else{
       this.submitUpdateForm();
     }
 }

答案 1 :(得分:1)

为什么没有(ngSubmit)="submit()",并且在组件打字稿中必须根据类型变量逻辑调用相应的方法?

答案 2 :(得分:0)

使用三元运算符(?.. :)进行条件渲染。

<form (ngSubmit)="type === 'add' ? submitCreateForm() : submitUpdateForm">

答案 3 :(得分:0)

1)这不是很好的做法,但是可以解决问题。尝试根据该布尔值保留两种形式。

<form ng-if="type == true" (ngSubmit)="submitCreateForm()">
<form ng-if="type != true" (ngSubmit)="submitUpdateForm()">

2)我的第二个建议是使用通用的提交动作和基于布尔“类型”的单独逻辑