大家好,我正在尝试检查,例如在 Firebase 中的集合上创建文档之前,object.name、object.title、object.velocity...是否只是一个空格 ('') 或者它们是否在打字稿(Ionic 4)中是null,但我认为还有另一种更快的方法,处理它的最佳建议是什么?
我所做的是,但我认为太长了......:
if (this.object.name == '' || this.object.title == ''.......)
谢谢你
不幸的是,我的声誉太低,无法将此作为评论。
object.property
从哪里获取它的值?
您是否在 HTML 中的表单上使用输入字段?
如果您使用表单上的输入字段来捕获
object.name
和 object.title
,那么将 form validators
与 formGroup
和 formBuilder
一起使用会更容易/最好
import{ Validators, FormBuilder, FormGroup, FormControl }from'@angular/forms';
这将确保您的对象属性中始终包含数据,或者让您向最终用户显示其信息有问题。
有很多关于验证器的信息,但它们实现起来相当简单,而且大部分都是在
page.html
上完成的。
如果您从服务获取数据,或者只想在
object
之前最后一次检查 doSomething()
1,那么您将需要循环遍历对象中的每个属性。
尝试否定:
if (!this.object.name || !this.object.title) { /* ... */ }
文档:逻辑不在 JS 中
将转换为 false 的表达式:
/* Example for your case: */
let obj = { name: null, title: '' };
console.log('there is no name', !obj.name)
// output: there is no name – true
console.log('there is no title', !obj.title)
// output: there is no title – true
if (!obj.name || !obj.title) {
console.log('condition satisfied');
}
// output: condition satisfied