Warning: file_get_contents(/data/phpspider/zhask/data//catemap/1/angular/26.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181
无法在Angular 2组件中插入引导表_Angular_Bootstrap Table - Fatal编程技术网

无法在Angular 2组件中插入引导表

无法在Angular 2组件中插入引导表,angular,bootstrap-table,Angular,Bootstrap Table,我正在用ASP.NET 5开发Angular 2 web应用程序。我想在组件中插入一个表。该表是使用以下库生成的:。我注意到,如果表位于某个组件中,它将不起作用。同时,如果它位于index.html文件中,它也可以工作。这可能是因为指向文件bootstrap-table.css和bootstrap-table.js的链接位于索引中,但是index.html应该只包含根组件,因此我必须找到一种方法使表工作,即使它位于组件内部。这是表格的代码: <table data-toggle="tabl

我正在用ASP.NET 5开发Angular 2 web应用程序。我想在组件中插入一个表。该表是使用以下库生成的:。我注意到,如果表位于某个组件中,它将不起作用。同时,如果它位于index.html文件中,它也可以工作。这可能是因为指向文件bootstrap-table.css和bootstrap-table.js的链接位于索引中,但是index.html应该只包含根组件,因此我必须找到一种方法使表工作,即使它位于组件内部。这是表格的代码:

<table data-toggle="table" data-url="data1.json" data-height="299">
    <thead>
        <tr>
            <th data-field="id">Item ID</th>
            <th data-field="name">Item Name</th>
            <th data-field="price">Item Price</th>
        </tr>
    </thead>
</table>

代码应该是正确的,因为它是从这里复制过来的:。

如果您阅读了插件bootstrap-table.js的源代码,您会发现,实际上在最后,下面的代码bootstrap all table已经在DOM中可用:

$(function () {
    $('[data-toggle="table"]').bootstrapTable();
})
如果将Angular1与路由一起使用,或将angular2与组件一起使用,则在angular2需要该表之前,该表很可能不在DOM中


您可以做的是手动调用ngAfterViewInit方法中的bootstrapTable函数

任何关于如何在组件中插入此表的代码都可能有助于回答此问题每个Angular 2组件都有一个名为templateUrl的属性,该属性指示包含表示组件的html代码的文件。代码应该是正确的,因为它是从他们网站的一个示例中复制粘贴的。但是,如果我在ngAfterViewInit方法中使用$symbol,它会带下划线。但是如果我移动index.html文件中的表代码,它会立即工作,而不需要bootstrapTable方法调用。按照以下步骤在angular2组件中使用jquery:. Imho,这取决于插件启动时表是否在dom中。如果稍后添加表,小部件不会自行运行。但是如何在html元素上调用bootstrapTable方法呢?JQuery用于选择元素,但只能调用元素的方法。