プロジェクトで使用したプラグインをいくつか記録して、時間内に確認できるようにします...
〜
注意を払い、お気に入りを求め、いいねを求めてください。ブロガーが不合理なことを書いていることに気付いた場合は、私に知らせてください。時間内に知って、ありがとう〜
序文
実際のプロジェクトの開発では、大中規模のプロジェクトで多くのプラグインやツールを使用することが多く、ホイールの繰り返し作成の問題は言うまでもなく、プロジェクトがすべてチームによって開発されていると言うのは明らかに非現実的です。 。強力な適用性を備えたツールの開発には、依然として多くの労力が必要です(ビジネスの特殊性によって期待に応えるプラグインやツールがない場合を除く)。
この
シリーズの記事の主な目的は、日常の開発で使用されるJSを記録することです。プラグイン、およびいくつかの使用法を記録して、あなたとあなたの友人が相談できるようにします。
この記事の主人公:time-formater(npm address)、これは時間フォーマットツールですが、少しニッチであり、@ typesがないため、TypeScriptに適用できません。まだ使用しています...聞かないで
ください
インストールと使用
インストールは従来のインストール方法です。ここでも、@ types / time-formaterはありません。独自に作成する必要があります:
// 安装
npm i -S time-formater
使い方はノード環境とブラウザ環境で似ていますが、仕様が異なります
// 可以
const timeFormater = require('time-formater')
// 也可以
import timeFormater from "time-formater";
文法
パラメータの解析
format関数は、現在の時刻を表し、秒単位で正確な最も一般的な「YYYY-MM-DD HH:mm:ss」など、多くの事前設定された仮パラメーターをパラメーターとして受け入れます(他のパラメーターについては、第2章を参照)。
// 2022-02-09 12:12:12
timeFormater().format("YYYY-MM-DD HH:mm:ss")
たとえば、トリミングがサポートされている場合、これは現在のフルタイムです。
// 2022-02-09 12:12
timeFormater().format("YYYY-MM-DD HH:mm")
// 2022-02-09 12
timeFormater().format("YYYY-MM-DD HH")
コネクタも変更可能
// 2022/02/09 12/12/12
timeFormater().format("YYYY/MM/DD HH/mm/ss")
パラメータ
format関数で使用されるパラメーターは、上記よりはるかに多く、多くのプリセットパラメーターを受け取ります。たとえば、現在の曜日を知りたい場合は、パラメーター「d」を入力できます。
// 三
timeFormater().format("dd")
// // 2022/三月/09 12/12/12
timeFormater().format("YYYY/MMMM/DD HH/mm/ss")
詳細は次のとおりです。
名前 | パラメータ | 出力 |
---|---|---|
月 | M | 123… |
。 | ||
んん | 010203… | |
うーん | 一月二月三月… | |
んー | 一月二月三月… | |
クォーター | Q | 1 2 3 4 |
日にち | D | 123… |
する | 1日 2日 3日… | |
DD | 010203… | |
週 | d | 0 1 2 3 4 5 6 |
dd | 1日目234 5 6 | |
ddd | 日曜日月曜日火曜日水曜日木曜日… | |
dddd | 日曜日月曜日火曜日水曜日 | |
年 | YYYY | 1970年1971年… |
AM/PMなど | A | 早朝...午後の夕方 |
a | 早朝...午後の夕方 | |
時間 | H | 0 123…2223 |
HH | 0001…2223 | |
h | 12…1112 | |
hh | 0102…1112 | |
分 | m | 012…5859 |
んん | 000102…5859 | |
2番 | s | 012…5859 |
ss | 000102…5859 | |
ミリ秒 | s | 012…89 |
ss | 0001…9899 | |
sss | 000001…998999 | |
UNIXタイムスタンプ | バツ | 1495357559853 |
Unixタイムスタンプミリ秒 | バツ | 1495357559853 |
その他の機能
時差ぼけ
fromNowは、入力時刻と現在時刻の時間差を計算するために使用されます。使用法は次のとおりです。
let fromNow = time('2022-01-01').fromNow()
// 2个月前
console.log(fromNow)
。
秒読み
この例はnpmの公式の説明からのものであり、一般的な機能は次のとおりです。
const time = require('time-formater')
let remain = 100000 // 10万秒
let countdown = time.countdown(remain)
let token = '剩余:d天H小时m分钟s秒'
// 浏览器
function step() {
document.title = countdown.format(token) // 剩余:1天3小时46分钟40秒
requestAnimationFrame(step)
}
step()
ここで使用される2つの関数、1つはカウントダウン、もう1つはカウントダウンの
形式です
秒読み
カウントダウン時間を返します。
- time <number | string | Date>タイプは、残りの秒数を示す数値、Dateインスタンス、または終了時点を示す文字列(ISO 8601形式)です。
。
フォーマット(トークン)
時間を文字列としてフォーマットします。
- トークンは、出力形式を指定するために使用されます。例:'残り:d日H時間m分s秒' => "残り:1日11時間4分38秒"。
トークン | 説明 |
---|---|
d | 天数 |
H | 時間 |
m | 分 |
s | 2番 |
S | ミリ秒 |
# | プレフィックス。指定された幅までゼロを埋めることを意味します。例:#3dは、日を3文字の001に埋めることを意味します。 |
TypeScriptタイプ
残念ながら、このプラグインはタイプを提供せず、タイプに応じてのみ補足することができます。一般的なタイプは次のように追加されます。
interface countdownFormat {
format: (params: string) => string;
}
interface FormaterInterface {
format: (params?: string | number) => string;
fromNow: () => string;
countdown: (params: number | string | date) => countdownFormat;
}
declare module "time-formater" {
function timeFormater(params?: string | number): FormaterInterface {
}
export = timeFormater;
}
それは完全ではないかもしれません、そして興味のある友人はさらに追加することができ
ます;
まとめ
これは私が個人的に使いやすいと感じている時間フォーマットツールです。唯一の欠点は、TypeScriptのサポートも非常に不親切であるなど、作成者が後の期間にそれを維持し続けていないように見えることです。これを作成する必要があります。自分でアップします。とても良いです。お勧めする価値があります。