Mit Vue.JS 1.0 konnte ich keine einfache Möglichkeit finden, ein JSON-Datum richtig zu formatieren, das leer sein kann.Wie formatiere ich ein (möglicherweise Null/leer) Datum in VueJS
Ich versuchte mit vue-filter npm packagedate filter
aber es schlägt fehl, wenn das Datum leer ist. Zum Beispiel, wenn meine Daten:
{ name: "John", birthday: null }, /* unknown birthday */
{ name: "Maria", birthday: "2012-04-23T18:25:43.511Z" },
kehrt
John 12/31/1969 9:00:00 PM <-- null date should be blank
Maria 4/23/2012 3:25:43 PM <-- ok
Der Code ich verwende:
<!DOCTYPE html><html>
<head>
<script src="lib/vue/dist/vue.min.js"></script>
<script src="lib/vue-filter/dist/vue-filter.min.js"></script>
</head>
<body>
<div id="app">
<h1>Without Filter:</h1>
<div v-for="person in list">
<div>{{person.name}} {{person.birthday}}</div>
</div>
<h1>With Filter:</h1>
<div v-for="person in list">
<div>{{person.name}} {{person.birthday | date }}</div>
</div>
</div>
<script>
new Vue({
el: "#app",
data: {
list: [
{ name: "John", birthday: null },
{ name: "Maria", birthday: "2012-04-23T18:25:43.511Z" },
]
}
});
</script>
</body>
</html>
Was den richtigen Weg ist, ein Datum zu formatieren, das wird auch zeigen, machen leer, wenn das Datum null ist?
Wissen Sie, wie Parameter von DateOrNull bis Date übergeben werden? Wie in '{{person.birthday | dateOrNull '% B'}} ' –
Modern JS hat den Spread-Operator. Siehe aktuelles Beispiel. Ältere JS würde 'Vue.filter ('date'). Apply (null, Argumente)' –
Ich bevorzuge die später, um mehr Browser zu unterstützen. Vielen Dank! –