首页 > 解决方案 > “IonList”不可分配给“HTMLIonItemSlidingElement 离子”类型的参数

问题描述

我每次运行以下命令时都会出现这个问题

ionic cordova build android --profile prod --release --prod

显示错误

//ts file code
@ViewChild('slidingItem', { static: true }) devotionList: IonList;


async addPost(slidingItem: HTMLIonItemSlidingElement,post: any) {
// code goes here 
}
 //html page
<ion-row class="ion-align-items-stretch" #postList [hidden]="shownSessions === 0">
      <ion-col size="12" size-md="6" *ngFor="let post of posts" [hidden]="post.hide">
        <!-- post item -->
        <ion-item-sliding #slidingItem>
          <div>
            <ion-item detail lines="inset" routerLink="/single-post/{{post.id}}">
              <ion-text>
                <h4 class="devotion-topic">
                  {{post.title}}
                </h4>
                <p class="devotion-date">
                  {{post.dateCreated | date}}
                  <!-- {{post.date}}  -->
                </p>
                <p class="devotion-excerpt">
                  {{post.excerpt}}
                </p>
              </ion-text>
            </ion-item>
            <ion-item-options>
              <ion-item-option (click)="addpost(slidingItem, post)" *ngIf="segment === 'all'">
                Favorite
              </ion-item-option>
              <ion-item-option color="danger" (click)="removePost(slidingItem, post, 'Remove Favorite')"
                *ngIf="segment === 'favorites'">
                Remove
              </ion-item-option>
            </ion-item-options>
          </div>
        </ion-item-sliding>
      </ion-col>
    </ion-row>

我不知道我做错了什么。基于我的研究 ionlist 扩展了 HTMLIonItemSlidingElement

同一问题的离子论坛链接

https://forum.ionicframework.com/t/ionlist-is-not-assignable-to-parameter-of-type-htmlionitemslidingelement/178131

标签: angularionic-frameworkionic4

解决方案


我实际上是从 ionic 社区 slack 论坛了解到我做错了什么我更改了以下代码并且我的命令成功运行

@ViewChild('slidingItem', { static: true }) devotionList: IonList;

@ViewChild('slidingItem', { static: true }) devotionList: IonItemSliding;

async addPost(slidingItem: HTMLIonItemSlidingElement,post: any) {// code goes here}

async addPost(slidingItem: IonItemSliding,post: any) {// code goes here}

我实际上引用了错误的类型。


推荐阅读