Warning: file_get_contents(/data/phpspider/zhask/data//catemap/9/javascript/465.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 设置超时时智能表未刷新_Javascript_Angularjs_Smart Table - Fatal编程技术网

Javascript 设置超时时智能表未刷新

Javascript 设置超时时智能表未刷新,javascript,angularjs,smart-table,Javascript,Angularjs,Smart Table,与表格生成相关的代码在以下函数中不起作用 function populateDataTable(repo_contributor,repo_langauges){ $scope.rowCollection = [ {firstName: 'Laurent', lastName: 'Renard', birthDate: new Date('1987-05-21'), balance: 102, email: 'whatever@gmail.com'}, {

与表格生成相关的代码在以下函数中不起作用

function populateDataTable(repo_contributor,repo_langauges){
    $scope.rowCollection = [
        {firstName: 'Laurent', lastName: 'Renard', birthDate: new Date('1987-05-21'), balance: 102, email: 'whatever@gmail.com'},
        {firstName: 'Blandine', lastName: 'Faivre', birthDate: new Date('1987-04-25'), balance: -2323.22, email: 'oufblandou@gmail.com'},
        {firstName: 'Francoise', lastName: 'Frere', birthDate: new Date('1955-08-27'), balance: 42343, email: 'raymondef@gmail.com'}
    ];

 for (var key in repo_contributor){
    console.log(repo_contributor[key]);
    var repo_table_data = {};
    repo_table_data['repo_name'] = key; 
    repo_table_data['contributors'] = repo_contributor[key].toString();
    repo_table_data['languages'] = repo_langauges[key].toString();
     console.log(repo_table_data);
    $scope.repo_info_list.push(repo_table_data);
}
    console.log("here now");
    console.log($scope.repo_info_list.length);

}
populateDataTable正在由以下代码填充

setTimeout(populateDataTable,4000,$scope.repo_contributor,$scope.repo_languages);
$scope.rowCollection
正在设置,但未显示在表上(表为空)

但是,如果将
$scope.rowCollection
放置在
已填充数据表
之外,则该表将填充正确的值


非常感谢您的帮助。

您必须这样尝试

setTimeout(function() {            
   populateDataTable($scope.repo_contributor,$scope.repo_languages);
  }, 4000)

在setTimeOut中,尝试如下箭头函数:

setTimeout( ()=> {            
   populateDataTable($scope.repo_contributor,$scope.repo_languages);
  }, 3000)

正如Hadi所提到的,setTimeout不起作用,但是$timeout和函数参数起作用

i、 e


为此使用
$timeout
函数,而不是
setTimeout
。因此将其注入控制器。非常漂亮!它就像一个符咒!非常感谢。
$timeout(populateDataTable, 4000,true,$scope.repo_contributor,$scope.repo_languages)