html - 检查html中的空角度对象
问题描述
我试图在对象是否为空的情况下禁用按钮。在这种情况下,对象selectedTopics应该等于 {}
注册.ts
ngOnInit() {
this.topicRequestAnswer = {topics:[]};
this.selectedTopics = {}; // <- setting equal to {} here
this.requestTopics();
}
注册.html
<ion-content class="ion-padding">
<form #form="ngForm" (ngSubmit)="register(form)">
<ion-grid>
<ion-row color="primary" class="ion-justify-content-center">
<ion-col class="ion-align-self-center" size-md="6" size-lg="5" size-xs="12">
<div class="ion-text-center">
<h3>...</h3>
</div>
<div class="ion-padding">
<ion-item>
<ion-input [(ngModel)]="email" name="email" type="email" placeholder="E-Mail" ngModel required></ion-input>
</ion-item>
<ion-item>
<ion-label>Choose a topic</ion-label>
<ion-select [(ngModel)]="selectedTopics" name="topics" multiple="true" ngModel required>
<ion-select-option *ngFor="let topic of topicRequestAnswer.topics" value="{{topic}}" class="ion-text-justify" ngModel required>{{topic}}</ion-select-option>
</ion-select>
</ion-item>
<ion-item>
<ion-input [(ngModel)]="name" name="username" type="username" placeholder="Username" ngModel required></ion-input>
</ion-item>
<ion-item>
<ion-input [(ngModel)]="password" name="password" type="password" placeholder="Password" ngModel required></ion-input>
</ion-item>
</div>
<div class="ion-padding">
<ion-button size="large" type="submit" [disabled]="form.invalid || selectedTopics == {}" expand="block">Sign Up</ion-button> // <- the [disabled] condition fails here
</div>
</ion-col>
</ion-row>
</ion-grid>
</form>
当我回显空的 $topics 变量时,我的 php 脚本中的输出是
[object Object]
如果没有选择任何主题,我如何需要更改条件以禁用按钮?
解决方案
即使你的条件是错误的this.selectedTopics = {};
因为基本原则{} == {}
也返回假,所以你的条件也会[disabled] = selectedTopics == {}
一种检查方法是:
Object.keys(this.selectedTopics).length === 0
要签入 html:
(selectedTopics | json) == '{}'
推荐阅读
- python - 为什么我没有为带有时间序列的 python 数据框获取字符串正确的标签?
- python - 为什么 smbprotocol 连接超时
- tableau-api - 使用提取数据编辑 BigQuery 自定义 SQL 后 Tableau 工作表未更新
- reactjs - NextJs / Framer Motion:使用 useViewportScroll 时出现此警告:警告:useLayoutEffect 在服务器上不执行任何操作,
- php - Flutter + Chopper POST API 在网络中不起作用
- excel - Workbook .SaveCopyAs 然后在创建的新工作簿中进行更改
- angular - 如何保护 AWS EC2 托管的 MEAN 堆栈应用程序的后端资源不被公开访问
- c# - 如何在包含控件的窗体上获取工具提示?
- tensorflow - 使用 TPU 进行二元与多类分类
- ffmpeg - ffmpeg gif 用颜色代替透明度