【问题标题】:ng-template's let-item="item" throwing an error in Angular 8ng-template 的 let-item="item" 在 Angular 8 中引发错误
【发布时间】:2020-05-22 03:46:56
【问题描述】:

我使用 ng-select 来满足我对可搜索下拉列表的要求。 下拉菜单工作得很好。但是在 ng-template 上会抛出 html 错误。

let-item="item" 如果我对上述行进行任何更改,则不会加载下拉列表。

这是抛出的错误

The template context of 'ɵf' does not define a member called 'item'ng(0)

虽然我在下拉菜单的工作中没有遇到任何问题,但这些错误在 CI/CD 过程中阻止了我。即当我使用npm run-script build 时,会显示这些错误。这将影响我的产品发布。

<ng-select required [items]="requestTypes" id="RequestTypeId" formControlName="RequestType" bindLabel="requestTypeName" appendTo="body" [(ngModel)]="accountFilters.requestTypeObject" placeholder="Select Client" class="font" [ngClass]="{ 'esubmit': submitted &amp;&amp; accountConfigForm.controls.RequestType.errors }">
  <ng-template ng-option-tmp let-item="item">
    <div title="{{item.requestTypeName}}">{{item.requestTypeName}}</div>
  </ng-template>
</ng-select>

【问题讨论】:

    标签: html angular typescript angular8 ng-template


    【解决方案1】:

    我认为只能用于语句的 else 部分

    例如:

    <ng-container *ngIf="a=='value';else dosmthing"> 
      // if part 
    </ng-container>
    <ng-template #dosmthing>
    // else part
    </ng-template>
    

    如果您没有 else,请尝试在您的代码中使用它

    <ng-select required [items]="requestTypes" id="RequestTypeId" formControlName="RequestType" bindLabel="requestTypeName" appendTo="body" [(ngModel)]="accountFilters.requestTypeObject" placeholder="Select Client" class="font" [ngClass]="{ 'esubmit': submitted &amp;&amp; accountConfigForm.controls.RequestType.errors }">
      <ng-container ng-option-tmp let-item="item">
        <div title="{{item.requestTypeName}}">{{item.requestTypeName}}</div>
      </ng-container >
    </ng-select>
    

    【讨论】:

      猜你喜欢
      • 1970-01-01
      • 2019-02-09
      • 2015-03-22
      • 2020-12-18
      • 1970-01-01
      • 1970-01-01
      • 2018-09-07
      • 1970-01-01
      • 1970-01-01
      相关资源
      最近更新 更多