Вам необходимо создать пользовательский компонент
- Сначала создайте компонент
Новый компонент, который будет использоваться в качестве пользовательского компонента (image-thumbnail.column.ts)
import { Component, Input, OnInit } from '@angular/core';
@Component({
selector: 'image-thumbnail-column',
template: `
<div>
<img [src]="value" />
</div>
`,
})
export class ImageThumbnailColumn implements OnInit {
@Input() value: string;
@Input() rowData: any;
ngOnInit(): void {
console.log(this.value);
console.log(this.rowData);
}
}
2-й, добавьте тип: «пользовательский» к столбцу изображения (свойство столбца)
3-й, добавьте средства визуализацииComponent: ImageThumbnailComponent (не убедитесь, что его rendererComponent или что-то еще, см. документы смарт-таблицы) к столбцу изображения, это важный шаг, потому что, когда вы устанавливаете тип столбца как настраиваемый, интеллектуальная таблица просматривает это свойство, чтобы отправить информацию о данных таблицы в компонент
Обновлен домашний компонент (home.component.ts)
import { myListDB } from "../../../shared/tables/myList";
import { ImageThumbnailColumn } from "./image-thumbnail.column.ts";
export class MyBookingsComponent implements OnInit {
public pageTitle = "My Home Page";
public notifications = [];
constructor() {
this.notifications = myListDB.data;
}
public settings = {
editable:false,
actions: {
position: 'right',
add: false,
edit: false,
delete: false
},
columns: {
no: {
title: 'No'
},
brandlogo: {
title: 'Brand Logo',
type: 'custom',
renderComponent: ImageThumbnailColumn
},
brand: {
title: 'Brand'
},
title: {
title: 'Campaign Name'
}
},
};
ngOnInit(){
}
}
4, интеллектуальная таблица попытается отправить два объекта Ваш пользовательский компонент, первый из которых - значение, а второй - rawData. Внутри пользовательского компонента необходимо использовать значение @Input (): InterfaceOfValueForColumn; и @Input () rawData: InterfaceOfEachRawData;
Завершить, убедитесь, что добавили пользовательский компонент к компонентам ввода используемого модуля, например,
, если модуль, который используется для умной таблицы: home.module.ts
@NgModule({
...
entryComponents: [ImageThumbnailColumn],
...
})
export class HomePageModule {
}
. В этой ситуации значение является типом строки и содержит URL-адрес, который отображается на прикрепленном изображении * 1036. *
тогда вы можете показывать эти красивые изображения любым удобным вам способом.