Angularjs 使用Angular UI Grid,如何在不使用行选择的情况下访问行实体数据?

Angularjs 使用Angular UI Grid,如何在不使用行选择的情况下访问行实体数据?,angularjs,angular-ui-grid,Angularjs,Angular Ui Grid,我正在尝试从智能表格1.x版切换到Angularui grid(3.0版),它是ng grid的替代品。 我几乎喜欢ui网格的一切,但有一件事让我发疯。在智能表中,dataRow有一个值,这是引用表中实体的一种方便方法 我使用它的目的是填充一个html模板以包含实体中的字段信息,类似于网格单元格中放置的html模板中的ng click=“$parentScope.edit(dataRow.id)” 然而,在ui网格中,如果不进行正式的行或单元格选择,我似乎无法访问实体对象。任何将其包含在单元格模

我正在尝试从智能表格1.x版切换到Angularui grid(3.0版),它是ng grid的替代品。
我几乎喜欢ui网格的一切,但有一件事让我发疯。在智能表中,
dataRow
有一个值,这是引用表中实体的一种方便方法

我使用它的目的是填充一个html模板以包含实体中的字段信息,类似于网格单元格中放置的html模板中的
ng click=“$parentScope.edit(dataRow.id)”

然而,在ui网格中,如果不进行正式的行或单元格选择,我似乎无法访问实体对象。任何将其包含在单元格模板中的操作都会导致一个对象(
row.entity
),但我无法访问任何实体元素,它们显示为未定义。有什么想法吗

此外,我能够在html模板中执行一个方法,但只能执行没有参数的方法,而不能尝试使用实体本身的参数

以下是我使用智能表的html模板:

,此时是一个对象,正如
行。实体
。我希望能够使用类似于
row.entity.id
的字段,但它是
未定义的

这篇文章可能很有用


基本上,您需要为网格设置外部作用域,以便访问数据。

我的剪切粘贴中的小错误。编辑的ng click行实际上是我的测试之一。应该阅读的是ng click=“grid.appScope.edit(row.entity.id)”根据需要进行编辑。但是,您应该知道,您可以自己编辑自己的问题:查找问题下方的
edit
按钮:)非常感谢您的帮助!让它工作,但遇到了一个奇怪的障碍,找到了一个解决办法。我对其中一个列字段使用了cellTemplate,并引用了一个HTML文件。很好。当我对cellHeader尝试同样的方法时,出现了错误。最终起作用的是获取HTML并将其放在一个var中,使用defs列中的var引用。很好。只是觉得很奇怪。
<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>
function edit(row){
    . . .
};