私の HTML は読み込まれますが (上部のタグ"HI", "title1", "objName11"
により表示されます)、 ngb-accordion がビューにレンダリングされません。見逃したものを理解できません。span
コンパイル/ビルド エラーはありません。コンソールにエラーはありません。:(
NGB-PRECOMPILE について何か見ましたが、これは必要ですか? @ng-bootstrap/ng-bootstrap でも見つかりません。 https://stackoverflow.com/questions/38792108/precompile-error-on-ng-bootstrap-ngb-precompile
以下はコード スニペットです
(要点を説明するために、サービス/オブザーバブルを使用して実際に をロードする実装を削除することで、コードを大幅に簡素化しました)。onInit
MyObject
私のテンプレート: ./someComponent.Component.html:
<span>Hi<span>
<span>myObject.objList[0].title</span>
<span>myObject.objList[0].details[0].objName</span>
<ngb-accordion>
<ng-panel *ngFor="let myObj of myObject.objList">
<template ngbPanelTitle>
<span>{{myObj.title}}</span>
</template>
<template ngbPanelContent>
<div *ngFor="let detail of myObj.details" class="row">
<span>
{{detail.objName}}
</span>
</template>
</ng-panel>
</ngb-accordion>
成分:
import { Component, OnInit } from '@angular/core';
import { NGB_ACCORDION_DIRECTIVES } from '@ng-bootstrap/ng-bootstrap/accordion/accordion';
import { MyObject } from './MyObject.model';
@Component({
selector: 'some-selector',
templateUrl: './someComponent.Component.html',
directives: [ NGB_ACCORDION_DIRECTIVES ],
})
export class SomeComponent {
public myObject: MyObject = {
objList: [
{ title: "title1",
details: [{ objName: "objName11" },
{ objName: "objName12" }]
},
{ title: "title2",
details: [{ objName: "objName21" },
{ objName: "objName22" }]
}};
}
MyObjectModel:
export class MyObject{
objList: ObjList[];
}
export class ObjList{
title:string;
details: Detail[];
}
export class Detail{
objName:string;
}