Warning: file_get_contents(/data/phpspider/zhask/data//catemap/9/javascript/399.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181

Warning: file_get_contents(/data/phpspider/zhask/data//catemap/1/angularjs/20.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181
Javascript AngularJS在编译前扩展默认选项_Javascript_Angularjs - Fatal编程技术网

Javascript AngularJS在编译前扩展默认选项

Javascript AngularJS在编译前扩展默认选项,javascript,angularjs,Javascript,Angularjs,我正在构建一个简单的表指令。如果没有在选项中传递,我需要使用默认宽度扩展列 目前,我将这些选项复制并扩展到一个新的列数组中,这样我就可以避免一次设置列,然后再次重置它们,从而导致2个摘要 有没有一种理想的方法可以将它们扩展到现有的预编译对象上,从而避免双重摘要命中 类数据表{ 构造函数($scope){ var ColumnDefaults={width:50}; $scope.columns=$scope.options.columns.map((c)=>{ 返回angular.extend

我正在构建一个简单的表指令。如果没有在选项中传递,我需要使用默认宽度扩展列

目前,我将这些选项复制并扩展到一个新的列数组中,这样我就可以避免一次设置列,然后再次重置它们,从而导致2个摘要

有没有一种理想的方法可以将它们扩展到现有的预编译对象上,从而避免双重摘要命中

类数据表{
构造函数($scope){
var ColumnDefaults={width:50};
$scope.columns=$scope.options.columns.map((c)=>{
返回angular.extend(angular.copy(ColumnDefaults),c);
});
}
}
函数指令(){
返回{
限制:'E',
控制器:“数据表”,
范围:{
选项:“=”,
值:'=',
onSelect:“&”
},
控制器:“dt”,
模板:
`
`,
链接:函数($scope、$elm、$attrs){
//log($scope.options)
}
};

};如果在编译指令时钩住pre函数,则可以在指令init之前获得dom

compile: function(tElem, tAttrs){
  return {
    pre: function($scope, $elm, $attrs, ctrl){
      ... code here ...
    }
  }
}