Mam funkcję, która dostaje liczbę dni do dzisiaj. Działa jednak, używam pliku .j.js, aby napisać i sformatować datę z danych JSON i myślę, że powoduje to konflikt. Czy jest jakiś sposób na zrobienie tego samego przy użyciu pliku moment.js?Policz dni do dziś moment.js
To JavaScript pracy: http://jsfiddle.net/infatti/XeqPT/
// Count days due
function daysUntil(year, month, day) {
var now = new Date(),
dateEnd = new Date(year, month - 1, day), // months are zero-based
days = (dateEnd - now)/1000/60/60/24; // convert milliseconds to days
return Math.round(days);
}
W jaki sposób można to samo zrobić za pomocą moment.js?
Jeśli jesteś zainteresowany, oto jak wyciągam datę, kiedy to nie działa.
<span class="due-date" data-bind="textualDate: DueDate"></span>
ko.bindingHandlers.textualDate = {
update: function (element, valueAccessor, allBindingsAccessor, viewModel, bindingContext) {
var valueUnwrapped = ko.utils.unwrapObservable(valueAccessor());
var textContent = moment(valueUnwrapped).format("MM/DD/YYYY");
ko.bindingHandlers.text.update(element, function() { return textContent; });
}
};
* "Używam pliku .j.jpg do pisania i formatowania daty z danych JSON i myślę, że powoduje to konflikt." * Dlaczego tak uważasz? Obliczanie daty i wyprowadzanie jej to całkowicie niepowiązane operacje. –
@ alex23 Istnieje wiele powodów, dla których warto skorzystać z biblioteki daty. Matematyka daty i czasu jest brzydka i pełna przypadków skrajnych (zmienne długości miesięcy, strefy czasowe, oszczędność czasu letniego, lata przestępne). –
Po ręcznym umieszczeniu daty w html działa. Kiedy dane wiążę je do html, to nie działa. – simple