绑定到Kendo for Angular中的行项目

时间:2019-03-07 22:01:31

标签: angular kendo-ui kendo-grid

我正在使用Kendo网格控件来开发Angular应用程序。如何绑定到当前元素的属性?

例如,我有一个用户列表。我可以使用以下代码将它们列出来:

<kendo-grid [data]="Users" style="height: 100%">
  <kendo-grid-column title="Email" field="Email"></kendo-grid-column>
  <kendo-grid-column title="Username" field="Username"></kendo-grid-column>
  <kendo-grid-column title="Permissions" field="Permissions"></kendo-grid-column>
</kendo-grid>

但是,我还想添加按钮列来执行诸如编辑和删除用户之类的操作。我还在其他地方使用此按钮,我希望按钮列可以路由到该对象的详细信息页面。在那种情况下,我需要将对象的ID添加到路由中,但是我没有找到获取对象的方法。我想做这样的事情:

<kendo-grid-column>
  <ng-template kendoGridCellTemplate>
    <button routerLink="/knprojects/{{project.id}}">View Notes</button>
  </ng-template>
</kendo-grid-column>

问题是我没有一个“项目”对象,因为没有* ngFor迭代项...

很抱歉,如果这是一个简单的问题,但这是我第一次使用他们的网格和第一个真正的Angular应用程序,因此试图找出答案。

1 个答案:

答案 0 :(得分:0)

没关系,我明白了。我实际上是在树视图文档中找到它的,但在网格文档中却没有看到它,但是它似乎可以正常工作。如果在模板定义中使用“ let-project”,则“ project”为对象。因此在我的示例中应该是:

<kendo-grid-column>
  <ng-template kendoGridCellTemplate let-project>
    <button routerLink="/knprojects/{{project.id}}">View Notes</button>
  </ng-template>
</kendo-grid-column>