Vue JS - время работы в реальном времени истекло с датыPhp

Кемеровские программисты php общаются здесь
Anonymous
Vue JS - время работы в реальном времени истекло с даты

Сообщение Anonymous »

В настоящее время в моем блейд-файле отображается прошедшее время. Однако, чтобы увидеть обновленное время, мне нужно каждый раз обновлять данные. Я хотел бы отобразить динамику прошедшего времени. Есть ли способ сделать это?
Мой текущий код заключается в том, что я передаю в сценарий созданную дату (определенную из контроллера). Оттуда я получу часы, минуты и секунды. (Может быть, через несколько дней). Они возвращают его обратно в мой файл с блейдами.
Это часть моего файла с блейдами:

Код: Выделить всё



No

Created At





@{{index+1}}

@{{ setTimer(row.created_at) }}




А это скрипт vue js:

Код: Выделить всё

$(function () {
var vm = new Vue({
el: '#shopify_marketplace',
data: {
//some of data here
},
methods: {
//some other methods here
onReload: function(){
//few codes here and there
},
setTimer: function(created_at){

const startDate = new Date(created_at);
const now = new Date();
const elapsedSeconds = Math.floor((now - startDate) / 1000);

const day = Math.floor((elapsedSeconds / 3600));
const hours = Math.floor(elapsedSeconds / 3600);
const minutes = Math.floor((elapsedSeconds % 3600) / 60);
const seconds = elapsedSeconds % 60;

return `${hours}h ${minutes}m ${seconds}s`;

},
},
filters: {
autoCaps: function(value){
if(value != null) {
return value.toLocaleUpperCase();
}
},
},
ready: function () {
this.onReload();
},
});
});

На изображении ниже показано, как выглядит мой текущий дисплей. Но да, нужно обновлять каждый раз, чтобы увидеть обновление. Могу ли я узнать, как мне заставить время течь и «тикать»? Я пытался использовать эту функцию setInterval из JavaScript, но мне это не удалось.
current_display

Подробнее здесь: https://stackoverflow.com/questions/791 ... rom-a-date

Вернуться в «Php»