来自LocalStorage的Angular 9中的迭代值

问题描述 投票:0回答:2

我在Angular中显示来自Localstorage的嵌套值时遇到问题。问题出在第二个* ngFor上。第一个* ngFor显示效果很好。第二个ngFor错误为“ TypeError:无法读取未定义的属性'toUpperCase'”?我不知道为什么是toUppercase,因为我在这里不使用大写]

PIC

HTML

<mat-list-item role="listitem" *ngFor="let bookmark of bookmarks">
     {{ extractNameFromJson(bookmark[1]).id }}
         <ul>
           <li *ngFor="let extractNameFromJson(bookmark[1])?.cuesData of bookmark">
                   {{ }}   
            </li>
         </ul>
 </mat-list-item>

TS

 getAllBookmarks() {
   this.bookmarks = Object.entries(localStorage);
   console.log(this.bookmarks);
 }

 extractNameFromJson(obj) {
    obj = JSON.parse(obj);
    return obj;
  }

我在Angular中显示来自Localstorage的嵌套值时遇到问题。问题出在第二个* ngFor上。第一个* ngFor显示效果很好。第二个ngFor的错误为“ TypeError:无法读取...

angular angular6 angular7 angular-forms angular-ngfor
2个回答
0
投票

第二个*ngFor语法不正确


0
投票

您首先需要在*ngFor中获取每个书签的值作为变量。使用ngFor从循环中提取变量时,无法进行函数调用。一种方法可以是让pipe在循环时为您执行此过滤,或者另一种方法可以是使用ng-container进行循环并仅在条件通过时才显示lis

© www.soinside.com 2019 - 2024. All rights reserved.