use*_*298 5 typescript angular2-template angular
我使用 jQuery dataTable 在列表视图上显示数据。我尝试使用以下方式将数据绑定到 dataTable 。
在 users.component.ts 上
getUsers() {
this.UserService.getUsersList()
.subscribe(
success => {
this.userList = success;
$("#userTable").find('tbody').empty();
var dataClaims = this.userList;
for (let i = 0; i < dataClaims.length; i++) {
$('#userTable').dataTable().fnAddData([
(i + 1),
dataClaims[i].name,
dataClaims[i].email,
dataClaims[i].contact_number,
dataClaims[i].address,
'<a [routerLink]="[' +"'"+"../../user/update" +"'" +']"' + ' class="fa fa-1x fa-pencil-square-o"></a>',
]);
}
}
);
}
Run Code Online (Sandbox Code Playgroud)
上述功能正常工作,数据表工作没有问题。
但[routerLink]没有转换为 html。在输出中,它显示如下:
<a [routerlink]="['../../user/update']" class="fa fa-1x fa-pencil-square-o"></a>
Run Code Online (Sandbox Code Playgroud)
但它应该转换为以下方式,
<a _ngcontent-c0="" ng-reflect-router-link="user/update" href="/user/update" class="fa fa-1x fa-pencil-square-o"></a>
Run Code Online (Sandbox Code Playgroud)
[routerlink]有人可以解释一下在从 .ts 文件渲染 html 数据时如何转换为普通链接吗?谢谢。
如果你真的想使用 dataTable,也许这对你有帮助:
基本上,您应该创建一个封装数据表逻辑的指令。
import {Directive, ElementRef} from '@angular/core';
import {Input, OnInit} from '@angular/core';
import { JqueryDataTableEvent } from './jquery-datable-event';
import 'jquery.dataTables';
declare var jQuery:any;
@Directive({
selector: '[jqueryDatatable]'
})
export class JqueryDatatableDirective implements OnInit {
private _datatable : any;
@Input()
jqueryDatatable: any;
@Input()
dataTableEvents: JqueryDataTableEvent[];
constructor(private _element: ElementRef) {}
ngOnInit() {
this.applyOptions();
this.applyEvents();
}
applyOptions()
{
if (!this.jqueryDatatable)
console.error("Empty options array was passed to initialize jqueryDatatable.");
this._datatable = jQuery(this._element.nativeElement).DataTable( this.jqueryDatatable || {} );
}
applyEvents() {
this.dataTableEvents.map((event)=> {
this._datatable.on(event.eventName, event.selector, event.callback)
});
}
}
Run Code Online (Sandbox Code Playgroud)
有人(@DarioN1)创建并举例如下:
https://plnkr.co/edit/t0Zwc3AtQTt98XvIirZ9?p=preview
| 归档时间: |
|
| 查看次数: |
21056 次 |
| 最近记录: |