在我的angularjs app中,我为一个"前缀"定义一个var。在我的所有console.log
中var app = angular.module('app', ['ngRoute', 'ngCookies', 'LocalStorageModule', 'ngResource', 'pascalprecht.translate']).run(function($rootScope, $timeout) {
$rootScope.defineCLC = "[ZR Console CL] " + updatingTime() + " ===> ";
[etc ...]
我在我的控制器中使用$ rootScope.defineCLC。
为了更新时间,我在外面输入了纯粹的js:
function updatingTime() {
setTimeout('updatingTime()', 3000);
var currentTime = new Date();
console.log('ok !');
return currentTime;
}
问题是它不起作用,时间总是应用程序执行的日期:/如何更新在console.log中使用它的时间?
答案 0 :(得分:1)
setTimeout('updatingTime()', 3000);
会在3秒后(在浏览器中检查开发者控制台)给你一个错误,因为你提供了一个字符串而不是一个函数。
你必须创建一个函数并使用angular的版本setInterval调用它。
var app = angular.module('app', []).run(function($rootScope, $interval) {
var fun = function() {
$rootScope.defineCLC = "[ZR Console CL] " + new Date() + " ===> ";
};
$interval(fun, 3000);
}]);