首页
学习
活动
专区
圈层
工具
发布
首页
学习
活动
专区
圈层
工具
MCP广场
社区首页 >问答首页 >friend.toLowerCase不是函数。应用ionic的searc函数时出错

friend.toLowerCase不是函数。应用ionic的searc函数时出错
EN

Stack Overflow用户
提问于 2018-07-30 18:03:54
回答 3查看 50关注 0票数 1

我得到这个错误:"friend.toLowerCase“不是一个函数。应用ionic的searc函数时出错。在我的程序中唯一不同的是,我不是只有一个JSON项目的列表,而是一个每个项目有5个项目的列表,比如friend.namefriend.status,e.t.c。我改变了一些东西,比如离子列表被称为items,我的friendsList。我认为这个错误可能是由混淆的名字引起的。但是我没有发现错误。

HTML

代码语言:javascript
运行
复制
<ion-searchbar (ionInput)="getFriends($event)"</ion-searchbar>
...
<ion-item *ngFor="let friend of friendsList">
...
<h2>{{friend.name}}</h2>
...

TS

代码语言:javascript
运行
复制
 export class RankfriendsPage {
      friendsList;

     constructor(public navCtrl: NavController, public navParams: NavParams) {
       this.initializefriendsList();
  }

  initializefriendsList() {
    this.friendsList = [
     {
          "name": "Alice",        //list example
          "status": "Online",
          "img": "img/6.jpeg",
          "img2": "img/33.jpeg",
          "text": "+ADD"
        },
    ];

      }




       getFriends(ev) {
          // Reset items back to all of the items
          this.initializefriendsList();

          // set val to the value of the ev target
          var val = ev.target.value;

          // if the value is an empty string don't filter the items
          if (val && val.trim() != '') {
            this.friendsList = this.friendsList.filter((friend) => {
              return (friend.toLowerCase().indexOf(val.toLowerCase()) > -1);
            })
          }
        }
EN

回答 3

Stack Overflow用户

发布于 2018-07-30 18:14:06

问题是因为没有带有toLowerCase()函数的朋友对象,我猜您需要,

代码语言:javascript
运行
复制
 this.friendsList = this.friendsList.filter((friend) => {
    return (friend.name.toLowerCase().indexOf(val.toLowerCase()) > -1);
 })
票数 2
EN

Stack Overflow用户

发布于 2018-07-30 18:05:48

代码语言:javascript
运行
复制
friend = {
  "name": "Alice",
  "status": "Online",
  "img": "img/6.jpeg",
  "img2": "img/33.jpeg",
  "text": "+ADD"
}

正如您所看到的,那里没有toLowerCase属性。

如果您希望使用它,可以在字符串上使用它,例如friend.name

票数 1
EN

Stack Overflow用户

发布于 2018-07-30 18:09:11

Friend是一个对象,并且对象没有toLowerCase()属性。

只能将toLowerCase()应用于字符串。

您可以使用friend.status.toLowerCase()、friend.name.toLowerCase()等。

票数 1
EN
页面原文内容由Stack Overflow提供。腾讯云小微IT领域专用引擎提供翻译支持
原文链接:

https://stackoverflow.com/questions/51591537

复制
相关文章

相似问题

领券
问题归档专栏文章快讯文章归档关键词归档开发者手册归档开发者手册 Section 归档