我已经尝试过最后几个小时让ui.grid在一行内显示一个嵌套表。
$scope.gridOptions.columnDefs = [
{name: 'id'},
{name: 'categoryName'},
{name: 'products', cellTemplate: '<div ui-grid="grid.appScope.gridOptions.data"></div>'}
];
每行可以没有,有一个或多个产品,但我无法显示我的产品。
我正在通过ajax请求json文件,但出于演示目的,我已将其设为静态。 这是plucker http://plnkr.co/edit/aXgXFZQL4xgVtTNH3y2S?p=preview
先谢谢
答案 0 :(得分:1)
这里的侦探分叉似乎可以解决:http://plnkr.co/edit/keLHObnxpaFfasyCQRNH?p=preview
需要进行一项更改才能获取正确的数据,而不是来自grid.appscope,而是来自行实体:
{name: 'products', cellTemplate: '<div ui-grid="row.entity[\'products\']"></div>'}
然后是一些让显示正确的东西,最显着的是将嵌套网格数据设置为实际的gridOptions对象。我试着用它来接受一个数组或其他普通对象,但是它似乎并不喜欢它。
答案 1 :(得分:1)
是否值得考虑使用可扩展模块:http://ui-grid.info/docs/#/tutorial/306_expandable_grid
如果产品数量可变,那么您目前正在采用的方法可能会给行高带来困难,而可扩展则允许可变数量的行。根据您的口味,扩展和折叠的能力可能是有益的,并且它提供了放置每个产品的更多信息的空间。