Warning: file_get_contents(/data/phpspider/zhask/data//catemap/1/angularjs/21.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
angularjs中页面的自动刷新_Angularjs - Fatal编程技术网

angularjs中页面的自动刷新

angularjs中页面的自动刷新,angularjs,Angularjs,我正在尝试根据所选值刷新页面。最初,我将meta标记设置为刷新页面10秒。稍后,当从combo中选择某个特定值时,页面应根据所选值进行刷新。 有一个buildchart函数,在我加载页面或刷新页面时执行。此函数用于从某个位置获取json文件。json文件每隔几分钟更新一次。因此,在几次间隔之后,我将在配置的位置获得更新的json文件。因此,我正在配置一个带有值的组合框,这样当用户选择值时,在经过了这么多秒之后,就会获取json并显示报告 HTML 但是,页面刷新时,meta标记内容中已配置的值为

我正在尝试根据所选值刷新页面。最初,我将meta标记设置为刷新页面10秒。稍后,当从combo中选择某个特定值时,页面应根据所选值进行刷新。 有一个buildchart函数,在我加载页面或刷新页面时执行。此函数用于从某个位置获取json文件。json文件每隔几分钟更新一次。因此,在几次间隔之后,我将在配置的位置获得更新的json文件。因此,我正在配置一个带有值的组合框,这样当用户选择值时,在经过了这么多秒之后,就会获取json并显示报告

HTML

但是,页面刷新时,meta标记内容中已配置的值为10。我缺少什么来更新这个

更新

我尝试在运行时更改meta标记,当值被选中时,现在页面刷新只会在指定的选定间隔内发生一次,之后不会重复

$scope.TimedRefresh = function(t) {
            console.log(t);
        var s = document.getElementById('refresh');

         s.setAttribute("content", t*10 +";URL=index.html#/Refresh");

        console.log(s);
    }
我从meta标记中删除了content属性,并在运行时分配它。但是,我尝试刷新页面不是一次,而是每配置一次间隔时间

试试看

$route.reload(); or $window.location.reload();

无论发生什么情况,meta标签都会刷新页面。您应该在控制器中调用
TimedRefresh(10)
,以便在加载时调用该函数

app.controller('myCtrl', function() {

    $scope.refreshValues = [
        {label:"1 Min", value:"1"},
        {label:"3 Min", value:"3"},
        {label:"5 Min", value:"5"},
        {label:"Never", value:"0"}
    ];

    $scope.TimedRefresh = function(t) {
            console.log(t);
            setTimeout("location.reload(true);", t*60);
    }

    $scope.TimedRefresh(10); // Will trigger TimedRefresh(10) once when the controller loads

    // ...
});

我很好奇你想做什么。您能详细说明一下吗?

为什么需要刷新页面?删除meta标记?但为什么要刷新呢?让Angular来做所有的工作。我删除了meta标记,但仍然没有工作。我正在使用div中的d3绘制一个报告,在每个间隔之后,我将获取最新的值来重新绘制报告。每次刷新时都会发生这种情况。Angular会帮助您做到这一点,而无需刷新页面。请参阅以获取数据并按常规间隔执行。我更改了setTimeout(“location.reload(true);”,t*60)中的代码;设置超时($route.reload(true),t*10);仍然不起作用
$scope.TimedRefresh = function(t) {
            console.log(t);
        var s = document.getElementById('refresh');

         s.setAttribute("content", t*10 +";URL=index.html#/Refresh");

        console.log(s);
    }
$route.reload(); or $window.location.reload();
app.controller('myCtrl', function() {

    $scope.refreshValues = [
        {label:"1 Min", value:"1"},
        {label:"3 Min", value:"3"},
        {label:"5 Min", value:"5"},
        {label:"Never", value:"0"}
    ];

    $scope.TimedRefresh = function(t) {
            console.log(t);
            setTimeout("location.reload(true);", t*60);
    }

    $scope.TimedRefresh(10); // Will trigger TimedRefresh(10) once when the controller loads

    // ...
});