Angular2 如何处理 .find 方法中的空值
Angular2 How to Handle null value in .find methode
我在这里写了一个简单的 .find 方法,它可以很好地找到我的数据,但是如果该记录不可用,那么它会显示第一个记录
public _pagedItems : any;
someval(value){
if(value.length>=5){
this._pagedItems= this.allItems.find(e=>e.uniqueid = value);
this.pagedItems=[];
this.pagedItems.push(this._pagedItems);
}
如果我的 uniquId 不可用,那么它应该显示 Nodata OR Null
这里是句柄 null 和 undefined 以及 return 没有数据的示例
您的代码看起来有误。您的代码使用 (=) 符号。所以改变 (==).
=和==的区别(=)等号是赋值(==)符号是比较值
这里有更恰当的例子,
public _pagedItems : any[]=[];
someval(value:string){
if(!this.isObjNull(value) && !this.isObjNull(this.allItems) && this.allItems.length>0){
if(value.length>=5){
if(this.allItems.find(e=>e.uniqueid ==value)){
//you need one data use find
this._pagedItems=this.allItems.find(e=>e.uniqueid == value);
//you need multiple data use filter
this._pagedItems = this.allItems.filter(e=>e.uniqueid == value);
}
//here Iam logged final variable
console.log("Final Paged Items",this._pagedItems);
}
}
}
//here is the method check null and undefined.
isObjNull(data){
If(data!=null && data!=undefined){
return true:
}else{
return false;
}
}
你可以像这样处理 html 部分
<ng-container *ngIf="_pagedItems; else noData">
<ng-container *ngIf="_pagedItems.length>0; else noData">
<!-- do you logic here.like *ngFor -->
</ng-container>
</ng-container>
<ng-template #noData>
<p>No data found</p>
</ng-template>
就这些了,让我们尝试一次。如果有任何错误,请告诉我。
注意:- 这里我使用的是示例变量,请替换您的实际变量。
如需比较相关的更多内容,请访问此处。
Difference between == and === in JavaScript
我在这里写了一个简单的 .find 方法,它可以很好地找到我的数据,但是如果该记录不可用,那么它会显示第一个记录
public _pagedItems : any;
someval(value){
if(value.length>=5){
this._pagedItems= this.allItems.find(e=>e.uniqueid = value);
this.pagedItems=[];
this.pagedItems.push(this._pagedItems);
}
如果我的 uniquId 不可用,那么它应该显示 Nodata OR Null
这里是句柄 null 和 undefined 以及 return 没有数据的示例
您的代码看起来有误。您的代码使用 (=) 符号。所以改变 (==).
=和==的区别(=)等号是赋值(==)符号是比较值
这里有更恰当的例子,
public _pagedItems : any[]=[];
someval(value:string){
if(!this.isObjNull(value) && !this.isObjNull(this.allItems) && this.allItems.length>0){
if(value.length>=5){
if(this.allItems.find(e=>e.uniqueid ==value)){
//you need one data use find
this._pagedItems=this.allItems.find(e=>e.uniqueid == value);
//you need multiple data use filter
this._pagedItems = this.allItems.filter(e=>e.uniqueid == value);
}
//here Iam logged final variable
console.log("Final Paged Items",this._pagedItems);
}
}
}
//here is the method check null and undefined.
isObjNull(data){
If(data!=null && data!=undefined){
return true:
}else{
return false;
}
}
你可以像这样处理 html 部分
<ng-container *ngIf="_pagedItems; else noData">
<ng-container *ngIf="_pagedItems.length>0; else noData">
<!-- do you logic here.like *ngFor -->
</ng-container>
</ng-container>
<ng-template #noData>
<p>No data found</p>
</ng-template>
就这些了,让我们尝试一次。如果有任何错误,请告诉我。
注意:- 这里我使用的是示例变量,请替换您的实际变量。
如需比较相关的更多内容,请访问此处。 Difference between == and === in JavaScript