Warning: file_get_contents(/data/phpspider/zhask/data//catemap/1/typescript/8.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181
Angular 当textarea的值为空字符串时,是否将其设置为null?_Angular_Typescript_Textarea - Fatal编程技术网

Angular 当textarea的值为空字符串时,是否将其设置为null?

Angular 当textarea的值为空字符串时,是否将其设置为null?,angular,typescript,textarea,Angular,Typescript,Textarea,循环生成了一组textareas,虽然我可以将初始值设置为null,但如果用户键入文本然后删除它,则该值将恢复为空字符串 我的html: <form #reviewForm="ngForm" (ngSubmit)="onReviewFormSubmit(reviewForm.value)"> ... <textarea (input)="value = $event.target.value" [name]="comments" [ngModel]=

循环生成了一组textareas,虽然我可以将初始值设置为null,但如果用户键入文本然后删除它,则该值将恢复为空字符串

我的html:

<form #reviewForm="ngForm" (ngSubmit)="onReviewFormSubmit(reviewForm.value)">
...
  <textarea (input)="value = $event.target.value"
            [name]="comments" [ngModel]="defaultValue"
            id="{{'comments-'+i}}"
            placeholder="Comments"></textarea>
...
</form>
json对象需要注释的字符串值,否则为空。我最初使用defaultValue将其设置为null,当用户键入我得到的字符串值时,但一旦他们清空textarea,它就会恢复为null


如何将空字符串状态设置为null?

您可以尝试以下方法,在输入事件上调用函数

虽然在提交表单时捕获值可能更容易

<textarea (input)="value = calculateValue($event.target.value)"  
          [name]="comments" [ngModel]="defaultValue"
          id="{{'comments-'+i}}"
          placeholder="Comments"></textarea>

您可以尝试以下方法,在输入事件上调用函数

虽然在提交表单时捕获值可能更容易

<textarea (input)="value = calculateValue($event.target.value)"  
          [name]="comments" [ngModel]="defaultValue"
          id="{{'comments-'+i}}"
          placeholder="Comments"></textarea>
值null表示有意缺少任何对象值

[ngModel]过账时不区分空和空

如果使用null和post绑定控件,它将返回空白

使用blank绑定时也会发生同样的情况,因为它返回字符串

另一个例子是,你绑定了一些文本,比如“example”,但是用户删除了这个文本并发布了页面,你希望得到什么,显然是空白的

如果要将blank处理为null,则需要

值null表示有意缺少任何对象值

[ngModel]过账时不区分空和空

如果使用null和post绑定控件,它将返回空白

使用blank绑定时也会发生同样的情况,因为它返回字符串

另一个例子是,你绑定了一些文本,比如“example”,但是用户删除了这个文本并发布了页面,你希望得到什么,显然是空白的


如果您想将blank处理为null,那么您需要

我认为,您可以在发送表单之前将值重置为null。 在onReviewFormSubmit方法中,可以添加一个if,它检查值是否为空字符串,如果为空,则将该特定值设置为null

 if (value.name === '') {
     value.name = null;
 }

我认为,您可以在发送表单之前将值重置为null。 在onReviewFormSubmit方法中,可以添加一个if,它检查值是否为空字符串,如果为空,则将该特定值设置为null

 if (value.name === '') {
     value.name = null;
 }

不幸的是,这不起作用。我仍然得到一个空字符串。为了澄清,它确实将值设置为null,但由于它是表单中textareas循环的一部分,表单submit不知道该值已设置。如何将此空值分配回textarea,以便表单稍后捕获并提交?不幸的是,这不起作用。我仍然得到一个空字符串。为了澄清,它确实将值设置为null,但由于它是表单中textareas循环的一部分,表单submit不知道该值已设置。如何将此空值分配回textarea,以便表单稍后捕获并提交?