日付FNSのV 2ベータはアウトです!


知らない人のために、日付FNSは現代のJavaScriptの日付ユーティリティライブラリです.これは、ビルドのサイズとパフォーマンスに焦点を当てている.これは、ツリーのように機能を使用するだけでビルドに含まれますshakableです.最小の造りサイズは、それがJS Worldで最も小さい日付ライブラリになるちょうど295 Bです!他の日付ライブラリと異なり、日付fnsはネイティブDate オブジェクトと機能的アプローチを包含する.
v 2を開発するのに2年かかりました、そして、その間、我々は図書館のあらゆるビットを再処理しました.我々は100の貢献者から約500プルの要求をマージしました!今日は試してみてください.
npm install date-fns@next --save
# or using Yarn:
yarn add date-fns@next
これは安定しており、APIを変更する予定はありません.それは最終的なリリースであったかもしれません、しかし、それが来たるべき日に多くの破壊的な変化を導入するので、我々はできるだけスムーズにアップグレード・プロセスを作ることに取り組むつもりです.一方で、ライブラリをテストし、フィードバックを共有することによって私たちを助けることができます.

何が新しい?
ここでいくつかの最もエキサイティングな機能は、変更の完全なリストについては変更履歴を参照ください.https://date-fns.org/v2.0.0-beta.1/docs/Change-Log
ECMAScriptモジュールV 2を使用すると、ESMとCommonJSを出荷するので、あなたのバンドルがツリーの揺れをサポートしている場合、パッケージのルートから直接関数をインポートでき、さらにスリムなビルドを得ることができます.
import { format, formatDistance, formatRelative, subDays } from 'date-fns'

format(new Date(), "'Today is a' iiii")
//=> "Today is a Wednesday"

formatDistance(subDays(new Date(), 3), new Date())
//=> "3 days ago"

formatRelative(subDays(new Date(), 3), new Date())
//=> "last Friday at 7:26 p.m."
また、camelcase命名方式を採用しました.
// Before v2.0.0
import addDays from 'date-fns/add_days'

// v2.0.0 onward
import addDays from 'date-fns/addDays'
FPファンが大好きであるもう一つの特徴は、新しいFPサブモジュールです.それは逆の順序で引数を受け入れて、デフォルトでcurryiedされる正規の関数のコピーを紹介します.それらは日付fns/fpから輸入され,通常の機能と共に使用できた.
FP機能の主な利点はfunctional-style function composing .
const { differenceInDays: regularDifferenceInDays } = require('date-fns')
const { differenceInDays: fpDifferenceInDays } = require('date-fns/fp')

regularDifferenceInDays(Date.now(), 0)
//=> 17815

fpDifferenceInDays(0, Date.now())
//=> 17815

fpDifferenceInDays(0)(Date.now())
//=> 17815

const daysSinceUnixEpoch = fpDifferenceInDays(0)
daysSinceUnixEpoch(Date.now())
//=> 17815
新しい機能の数十を追加しましたが、特別な注意が必要です.parse . 任意の形式で文字列を解析することができます.
import { parse } from 'date-fns'

parse('02/11/2014', 'MM/dd/yyyy', new Date())
//=> Tue Feb 11 2014 00:00:00
それはおそらく最も要求された機能であり、私たちが完全にI 18 Nコードを書き直させるようにすることでした.
また、我々は慎重に日付FNSの一貫性、予測、信頼性を高めるためにすべての機能を洗練した.ECMAScriptのようなエッジケースで動作しました.できます.

次は何ですか.
我々が最終版を出荷したあと、我々が集中したいいくつかのイニシアティブがあります:
  • UTCバージョンの関数.
  • 期間サポート.
  • タイムゾーン(現在のTZ機能)が提供されてdate-fns-tz ).
  • インテグAPIとの統合

  • 謝辞
    V 2も日付fnsも、一般的には、可能ではありません153 contributors それは、日付FNSをものすごいものにするのを助けました.私は誰でも言及することができれば、リストは大きすぎると思います.しかし、私は私の兄弟をスキップすることができません.あなたは素晴らしいです!
    読んでくれてありがとう!あなたがV 2が好きになることを願っています.結合date-fns community at Spectrum および.