Das ist mein json Daten, die die Betriebszeiten des Ladens zeigen:Wie kann ich "Geschlossen" oder "Öffnen" basierend auf der Zeit in vue js html anzeigen?
{
"status": true,
"data": {
"pid": 1,
"bussinessName": "ard",
"services": "looking for passionate",
"inventory": [],
"workHr": "Monday :9:00AM to 5:00PM,Thuesday :9:00AM to 5:00PM,Wednesday :9:00AM to 5:00PM,Tuesday : 9:00AM to 5:00PM,Friday :9:00AM to 5:00PM,Saturday :9:00AM to 5:00PM,Sunday :9:00AM to 5:00PM"
}
}
Mein vuejs Code ist:
<script>
new Vue({
el: '#feed' ,
data: {
data: [],
},
mounted() {
this.$nextTick(function() {
var self = this;
var id = 1;
console.log(id)
$.ajax({
url: "https://n2s.herokuapp.com/api/post/get/"+{{pid}},
method: "GET",
dataType: "JSON",
success: function (e) {
if (e.status == 1) {
self.data = e.data;
console.log(e.data)
const workHour = e.data.workHr.split(',').map((val) => {
const obj = val.split(':');
const time = val.replace(`${obj[0]}:`, '');
return {
day: obj[0],
time,
}
});
}
else
{
console.log('Error occurred');}
}, error: function(){
console.log('Error occurred');
}
});
})
},
})
</script>
I heutigen Stunden von Operationen mit dem folgenden Code angezeigt:
<div v-for="(item,key) in data.workHr" :key="key">
<span v-if="new Date().getDay()-1==key"> <img src="/static/assets/img/timer.png">Today : {{item.time}}</span>
</div>
Zusätzlich zu ihren Betriebsstunden muss ich auch "Geschlossen" oder "Offen" anzeigen, abhängig davon, ob sie innerhalb ihrer Arbeitszeiten sind oder nicht. Wie kann ich das umsetzen?
nicht über Ihre Frage, aber aus irgendeinem Grund Sie '$ nextTick verwenden()'? Alles in 'mount()' wird nach dem Laden automatisch aufgerufen. – cwang