【问题标题】:Remove ionic 2 ion-card div using Javascript in controller在控制器中使用 Javascript 删除 ionic 2 ion-card div
【发布时间】:2016-06-18 16:09:23
【问题描述】:

当有人点击垃圾桶图标时,我需要移除 ionic 2 卡。到目前为止,我的代码在运行时会出现querySelector is null 错误。

视图 html 如下所示:

  <ion-card *ngFor="#mediaItem of mediaItems" id="item{{mediaItem.id}}" class="media-item">


    <ion-card-header class="title-header">
      <div class="title-item">
        {{mediaItem.title}}
      </div>
      <ion-icon name="trash" class="bookmark_trash_icon" (click)="removeItem(mediaItem.id)"></ion-icon>
    </ion-card-header>


    <ion-card-content class="outer-content" >
      
      <img src='{{mediaItem.url}}'>

    </ion-card-content>

    <ion-item class="bookmark-media-item">
      <!-- <button (click)="topup(mediaItem)" clear item-left> -->

      <div style="float:left;">
        <ion-icon name="heart"></ion-icon>
        {{mediaItem.liked}} &nbsp;
        <ion-icon name="close-circle"></ion-icon>
        {{mediaItem.disliked}} &nbsp;
      </div>
      <a (click)="showUserProfile(mediaItem.owner, mediaItem.username)" style="float:left;">
        {{mediaItem.username}}
      </a>
      <div style="float:right;">
        <img src="img/tiny-v.png" class="bookmark-v-icon">
        {{mediaItem.credits_left}}
      </div>

    </ion-item>
  
  </ion-card>

我的控制器 javascript 代码如下所示:

 removeItem(theItemID) {
    let cardToHide = '#item'+theItemID;
    document.querySelector(cardToHide).style.display = 'none';
  }

我得到的错误是

querySelector is null

【问题讨论】:

    标签: javascript angular ionic2 ionic3


    【解决方案1】:

    您可以通过更改这部分代码来发送对象而不是 id:

    (click)="removeItem(mediaItem)"
    

    然后在 mediaItems 数组中找到该对象并从那里删除它。然后您的视图将自动更新。

    先获取数组中那个对象的index,然后可以使用mediaItems.splice(index, 1)从数组中删除:

    removeItem(theItem) {
        let index = this.mediaItems.indexOf(theItem);
        this.mediaItems.splice(index,1);
    }
    

    【讨论】:

    • 我早该想到的!谢谢。
    • 很好,我的朋友,我花了整个下午试图从我的对象中删除一个项目。
    猜你喜欢
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 2016-08-24
    • 2017-11-09
    • 1970-01-01
    • 2017-06-02
    • 1970-01-01
    • 1970-01-01
    相关资源
    最近更新 更多