提供范围

时间:2018-01-05 09:58:17

标签: javascript angularjs

我正在尝试创建类似于电子表格的空表单。

以下是我的控制器代码。

 var myApp=angular.module('myApp',[]);



myApp.controller('sheet', ['$scope','$timeout', function($scope,$parse){


$scope.columns = ['A', 'B', 'C', 'D','E'];
    $scope.rows = [1, 2, 3, 4];
    $scope.cells = {};


    process = function(exp) {
      return exp.replace(/[A-Z]\d+/, function(ref) {
        return 'compute("' + ref + '")';
      })
    }
    $scope.compute = function(cell) {
      return $parse(process($scope.cells[cell]))($scope);
    };

}]); 


  myApp.directive('focusMe', function($timeout) {
  return {
    scope: { trigger: '=focusMe' },
    link: function(scope, element) {
      scope.$watch('trigger', function(value) {
        if(value === true) { 
          //console.log('trigger',value);
          //$timeout(function() {
            element[0].focus();
            scope.trigger = false;
          //});
        }
      });
    }
  };
});

是否可以为列和行传递范围值,以便生成类似A-Z的网格,然后是AA-AZ,然后是BA-BZ直到ZZ。一直到10000行。

enter image description here

目前它能够生成网格,如图所示。

0 个答案:

没有答案