使用Angular UI-Grid,如何在不使用行选择的情况下访问行实体数据?
Using Angular UI-Grid, how do you access row entity data without using the row selection?
我正在尝试从 Smart-Table 版本 1.x 切换到 Angular ui -grid(3.0 版),替代 ng-grid.
我几乎喜欢 ui-grid 的所有内容,但有一件事让我发疯。在 smart-table 中,有一个 dataRow
的值,这是在 table.[=21 中引用实体的便捷方式=]
我使用它的目的是填充一个 html 模板以包含来自实体的字段信息,类似于 ng-click="$parentScope.edit(dataRow.id)"
放置在网格单元格中的 html 模板中。
但是,在 ui-grid 中,如果不进行正式的行或单元格选择,我似乎无法访问实体对象。将它包含在单元格模板中的任何努力都会产生一个对象,(row.entity
) 但我无法访问任何实体元素,它们显示为未定义。有什么想法吗?
此外,我已经能够在 html 模板中执行一个方法,但只能执行没有参数的方法,而不是尝试使用实体本身的参数的方法。
这是我的 html 模板,它使用 smart-table:
<a data-toggle="tooltip" data-placement="top" title="View {{filteredRowCollection}}" ng-click="$parent.$parent.$parent.$parent.view(dataRow.id)"
class="glyphicon glyphicon-camera green">
</a>
<a data-toggle="tooltip" data-placement="top" title="Edit {{selectionId}}" ng-click="grid.appScope.edit(row.entity.id)"
class="glyphicon glyphicon-pencil blue">
</a>
<a data-toggle="tooltip" data-placement="top" title="Delete {{selectionId}}" ng-click="$parent.$parent.$parent.$parent.delete(dataRow.id)"
class="glyphicon glyphicon-trash red">
</a>
我试图将类似的东西与 ui-grid:
一起使用
function edit(row){
. . .
};
row
,此时是一个对象,row.entity
也是。我希望能够使用 row.entity.id
之类的字段之一,但它是 undefined
.
这个post可能有用,https://technpol.wordpress.com/2014/08/23/upgrading-to-ng-grid-3-0-ui-grid/
基本上,您需要为您的网格设置外部范围,以便您可以访问数据。
我正在尝试从 Smart-Table 版本 1.x 切换到 Angular ui -grid(3.0 版),替代 ng-grid.
我几乎喜欢 ui-grid 的所有内容,但有一件事让我发疯。在 smart-table 中,有一个 dataRow
的值,这是在 table.[=21 中引用实体的便捷方式=]
我使用它的目的是填充一个 html 模板以包含来自实体的字段信息,类似于 ng-click="$parentScope.edit(dataRow.id)"
放置在网格单元格中的 html 模板中。
但是,在 ui-grid 中,如果不进行正式的行或单元格选择,我似乎无法访问实体对象。将它包含在单元格模板中的任何努力都会产生一个对象,(row.entity
) 但我无法访问任何实体元素,它们显示为未定义。有什么想法吗?
此外,我已经能够在 html 模板中执行一个方法,但只能执行没有参数的方法,而不是尝试使用实体本身的参数的方法。
这是我的 html 模板,它使用 smart-table:
<a data-toggle="tooltip" data-placement="top" title="View {{filteredRowCollection}}" ng-click="$parent.$parent.$parent.$parent.view(dataRow.id)"
class="glyphicon glyphicon-camera green">
</a>
<a data-toggle="tooltip" data-placement="top" title="Edit {{selectionId}}" ng-click="grid.appScope.edit(row.entity.id)"
class="glyphicon glyphicon-pencil blue">
</a>
<a data-toggle="tooltip" data-placement="top" title="Delete {{selectionId}}" ng-click="$parent.$parent.$parent.$parent.delete(dataRow.id)"
class="glyphicon glyphicon-trash red">
</a>
我试图将类似的东西与 ui-grid:
一起使用function edit(row){
. . .
};
row
,此时是一个对象,row.entity
也是。我希望能够使用 row.entity.id
之类的字段之一,但它是 undefined
.
这个post可能有用,https://technpol.wordpress.com/2014/08/23/upgrading-to-ng-grid-3-0-ui-grid/
基本上,您需要为您的网格设置外部范围,以便您可以访问数据。