Я новичок в angular 2+ и унаследовал незавершенный проект. Моя цель - создать всплывающую подсказку, которая проверяет детали аудита по конкретному полю и отображает их. Примером может быть:
"Updated by Seth, on 8/18/18."
Для этого я создал угловой компонент, который передает всю необходимую информацию обратно через сервис. Я вижу, что вызов службы работает как обычно, посмотрев в веб-отладчик. К сожалению, под рендерингом понимается всплывающая подсказка со следующим неполным текстом:
"updated by , "
Вот мой шаблон компонента.
<ng-template #tipContent>
<span *ngIf="loadCompleted">Updated By {{ auditDetail.updatedBy }}, {{ auditDetail.updatedAt | amTimeAgo }}</span>
</ng-template>
<i [ngbTooltip]="tipContent" (mouseenter)="refreshAuditDetail()" class="fas fa-info-circle fa-sm"></i>
Вот машинописный текст компонента.
@Component({
selector: 'audit-tooltip',
templateUrl: './audit-tooltip.component.html',
styleUrls: ['./audit-tooltip.component.css']
})
export class AuditTooltipComponent {
@Input() plan: Plan;
@Input() fieldName: string;
auditDetail: AuditDetail;
loadCompleted: boolean = false;
constructor(private planService: PlanService) { }
refreshAuditDetail() {
var planId = this.plan.id;
var fieldName = this.fieldName;
var fieldValue = this.plan[this.fieldName];
this.loadCompleted = false;
this.planService.getAuditDetails(planId, fieldName, fieldValue)
.subscribe((auditDetail: AuditDetail) => {
console.log(auditDetail);
this.auditDetail = auditDetail;
}, () => {}, () => this.loadCompleted = true);
}
}
И, если необходимо, вот где я его использую.
<h5 class="card-title">{{fieldLabel}}<audit-tooltip [fieldName]="fieldName" [plan]="plan"></audit-tooltip> </h5>
Чего мне не хватает?