迹忆客 专注技术分享

当前位置:主页 > 学无止境 > WEB前端 > Angular >

Angular 2 中的复选框双向数据绑定

作者:迹忆客 最近更新:2023/04/14 浏览次数:

这篇有 Angular 的文章将着眼于执行复选框双向数据绑定的不同方法。

我们将使用 ngModelOptions 属性进行双向数据绑定。当存在 name 属性时,此解决方案最有效。

我们还将介绍 ngModel 属性,该属性使 checkboxFlag 能够在更改时存储实际的复选框状态。然后我们将使用 change 属性进行数据绑定,这样当组件中的值发生更改时,复选框也会获得一个新值。

在表单中使用 ngModel 时,它通常不起作用,因此最好使用 ngModelOptions 属性来确保复选框值随着组件中的数据更改而更改。

<input
	type="checkbox"
	[(ngModel)]="itemChange"
	[ngModelOptions]="{standalone: true}"/>

Angular 复选框数据绑定

在某些情况下,如果输入不在表单内而是构成 ngFor 循环的一部分,则代码将不起作用。此外,name 属性需要包含在代码设置中才能使代码正常工作。

虽然上面的示例代码在前端部分处理双向数据绑定,但此解决方案在后端执行更改,正确使用 ngModel

<input
	[(ngModel)]="itemOne">
	type="checkbox"/>

为了让这段代码完美运行,将 { FormsModule }@angular/forms 导入 app.module.ts 并添加到导入数组中,如下所示:

import { FormsModule } from'@angular/forms';

[...]

@NgModule({
imports: [
	[...]
	FormsModule
],
[...]
})

name 属性必须是唯一的,默认选中状态才能按预期工作,并且它必须在 input 标签内。但是,如果你在重复对象数组时使用 ngFor 中的复选框,则此代码将不起作用,如下所示:

[{"checked":true},{"checked":false}]

然后我们也可以使用 change 属性在复选框上进行数据绑定。通过这种方法,我们可以更详细地创建代码。

html 组件将如下所示:

<input #saveCheckboxOne
	id="saveCheckboxOne"
	type="checkbox"
	[checked]="saveCheckbox"
	(change)="onSaveCheckboxChange(saveUserNameCheckBox.checked)" />

然后 component.js 会像下面这样写。

public saveCheckbox:boolean;

public onSaveCheckboxChange(value:boolean){
this.saveUsername = value;
}

转载请发邮件至 1244347461@qq.com 进行申请,经作者同意之后,转载请以链接形式注明出处

本文地址:

相关文章

在 Angular 中上传文件

发布时间:2023/04/14 浏览次数:71 分类:Angular

本教程演示了如何在 Angular 中上传任何文件。我们还将介绍如何在文件上传时显示进度条,并在上传完成时显示文件上传完成消息。

在 AngularJs 中加载 spinner

发布时间:2023/04/14 浏览次数:107 分类:Angular

我们将介绍如何在请求加载时添加加载 spinner,并在 AngularJs 中加载数据时停止加载器。

在 Angular 中显示和隐藏

发布时间:2023/04/14 浏览次数:78 分类:Angular

本教程演示了 Angular 中的显示和隐藏。在开发商业应用程序时,我们需要根据用户角色或条件隐藏一些数据。我们必须根据该应用程序中的条件显示相同的数据。

在 Angular 中下载文件

发布时间:2023/04/14 浏览次数:104 分类:Angular

本教程演示了如何在 angular 中下载文件。我们将介绍如何通过单击按钮在 Angular 中下载文件并显示一个示例。

在 Angular 中拖放

发布时间:2023/04/14 浏览次数:105 分类:Angular

本教程演示了如何在 Angular 中使用拖放。我们将介绍@angular/cdk/drag-drop 模块来完成 angular 中的拖放。

扫一扫阅读全部技术教程

社交账号
  • https://www.github.com/onmpw
  • qq:1244347461

最新推荐

教程更新

热门标签

扫码一下
查看教程更方便