Angularjs 如何使用ui网格显示网格中继器?

Angularjs 如何使用ui网格显示网格中继器?,angularjs,Angularjs,我有消息的数据,包括{id,message,date}。 我想使用ui网格在AngularJs中为每个日期显示一个带有数据{message}的网格 我在想这样的事情: {{item.Date} ui-grid属性接收包含多个参数的gridOptions对象。其中两项是: columnDefs-定义列及其数据绑定 数据-案例中的消息对象 查看文档以进行进一步研究: 代码示例 模板: <div ng-repeat='item in items track by item.id' ui-gr

我有消息的数据,包括
{id,message,date}
。 我想使用ui网格在AngularJs中为每个日期显示一个带有
数据{message}
的网格

我在想这样的事情:


{{item.Date}

ui-grid
属性接收包含多个参数的
gridOptions
对象。其中两项是:

  • columnDefs
    -定义列及其数据绑定
  • 数据
    -案例中的消息对象
  • 查看文档以进行进一步研究:

    代码示例

    模板:

    <div ng-repeat='item in items track by item.id' ui-grid='getItemGridOptions($index)'></div>
    

    首先,ui网格有一个测试版,但这仍然是测试版

    您可以尝试使用来分组数据并相应地构建网格

     var dataSource = {};
    
    $scope.gridOptions = {};
    
     var generalGridOptions = {
        enableSorting: true,
        columnDefs: [ 
          { name: 'prop1' },
          { name: 'prop2' },
        ],
        data: null
    };
    
    // group the data
    for(var i = 0; i < data.length; i++){
    
      if(!dataSource[data[i].month]){
        dataSource[data[i].month] = [];
      }
    
      var obj = {};
    
      for(var prop in data[i]){
        if(prop!='month'){
          obj[prop] = data[i][prop];
        }
      }
    
      dataSource[data[i].month].push(obj);
    }
    
    // build the grid options
    for (var item in dataSource) {
        $scope.gridOptions[item] = angular.copy(generalGridOptions);
        $scope.gridOptions[item].data = dataSource[item];
    }
    
    var数据源={};
    $scope.gridOptions={};
    var generalGridOptions={
    enableSorting:true,
    columnDefs:[
    {name:'prop1'},
    {name:'prop2'},
    ],
    数据:空
    };
    //将数据分组
    对于(变量i=0;i
    但是如何按“日期”分组并显示多个网格呢?
    ng repeat
    中的每个项目都应该动态创建其
    gridOptions
    并将其传递给
    ui grid
    属性。您可以调用负责初始化
    gridOptions
    的函数,将项目值传递给它。谢谢!那是角2吗?有没有办法用angular1来做这件事?这是用TypeScript写的,针对angular1。你有没有办法不用TypeScript来做这件事?
     var dataSource = {};
    
    $scope.gridOptions = {};
    
     var generalGridOptions = {
        enableSorting: true,
        columnDefs: [ 
          { name: 'prop1' },
          { name: 'prop2' },
        ],
        data: null
    };
    
    // group the data
    for(var i = 0; i < data.length; i++){
    
      if(!dataSource[data[i].month]){
        dataSource[data[i].month] = [];
      }
    
      var obj = {};
    
      for(var prop in data[i]){
        if(prop!='month'){
          obj[prop] = data[i][prop];
        }
      }
    
      dataSource[data[i].month].push(obj);
    }
    
    // build the grid options
    for (var item in dataSource) {
        $scope.gridOptions[item] = angular.copy(generalGridOptions);
        $scope.gridOptions[item].data = dataSource[item];
    }