困ったとき・よくある質問
困ったとき・よくある質問
RangeError、曜日や列が空、リングが出ない、めくりが動かない、ロケールが英語になるなど、うまくいかないときの対処と、よくある質問です。
RangeError: month must be an integer 1–12
オプションはそれぞれ検証されます。メッセージは、誤っているものを示します。1から12の整数ではない月、1から31ではない日、1から9999ではないyear、16から1024の外にあるsize、どちら向きでも45度を超えるturn、未知のthemeやweekendの値、スクリプト、スタイル、イベント属性、javascript:のアドレスを含むmarkです。Date#getMonth()の月は0から11なので、1を足してください。
曜日や年が出ない
曜日と小さな年は、yearを渡したときだけ描かれます。渡さなければ、意図的にどちらも省かれます。月と日だけでは、曜日が決まらないからです。
リングが出ない
ringsが効くのは、もともと綴じ具のないデザイン(badge、frame、sun、roll、plain、squircle)です。残りの12のデザインは自分の綴じ具を描くので、無視されます。0から24の数で本数を決められます。
housingやturnが効いていないように見える
アイコンを描く呼び出しのオプションに入っているか確かめてください。presetは初期値を与え、自分で渡したオプションが優先されるので、preset: "disc", housing: "square"は四角になります。turn: 0は傾けません。
横の列が空
sunとrollの日本語の列には、japanese: true(初期値はオフ)、year、そして対象の年(祝日は2000年から2099年、旧暦は1900年から2100年)が必要です。求められないマスは、推測せずに空のままになります。日本時間の真夜中から30分以内に新月や中気(太陽の位置による節気)がある場合が、そのひとつです。holidaysで付けた名前は、計算では埋まらないマスを埋めます。日本の暦を参照してください。
期待した祝日がない
ライブラリが知っているのは日本の祝日だけで、それも計算で求めたものだけです。ほかの国には、自分で名前を渡してください。アイコンならholidays、月間カレンダーならnotesです。
月間カレンダーに祝日がない
仕様です。祝日のデータを持たず、メモはすべて利用側から受け取ります。japaneseHolidaysOf(year)が日本の祝日を返すので、それをメモとして渡せます。
アイコンが英語になる
未知のlocaleは、例外を投げずに英語にフォールバックします。Intl.DateTimeFormat.supportedLocalesOf(locale)で確かめてください。Intlのデータが少ない実行環境(たとえばNodeの小さなICUビルド)では、知っているロケールが少なくなります。完全なビルドかブラウザーを使ってください。言語とロケールを参照してください。
flipCalendarが何もしない
ブラウザー(Web Animations API)と要素が必要です。ユーザーの端末が動きの軽減を求めている場合は、新しい日付がそのまま表示されます。試すにはmotion: "always"を渡し、常にそうしたいならmotion: "never"を渡します。サーバーでは動かせないので、エフェクトやイベントハンドラーから呼んでください。
めくりの日付が違う
flipCalendarは、fromを古いページ、toを新しいページとして、それぞれrenderで描き、toで解決します。要素にいま表示されている日付を読むことはしないので、実際に表示している日付をfromに渡し、解決した値を持ち続けてください。
1ページに2つのアイコンがおかしく見える
デザイン、日付、年、schemeが同じアイコンは、内部のidを共有するので、同じアイコンを1ページに2つ置いても問題ありません。ページ側のCSSがsvgやpathを対象にしていると、絵のスタイルが変わることがあります。自分のクラスに絞って書いてください。
サイズとバンドル
必要以上に読み込まれるときは、インポートを確かめてください。メインのインポートは18種類すべて(約48 kB)、themes/<name>は1つ(約9 kB)です。サイズとバンドルを参照してください。
質問
日付やタイムゾーンを読みますか。 いいえ。日付はいつも、呼び出す側が渡す引数です。何かを取得したり、保存したりしますか。 いいえ。SVGを<img>で使えますか。 はい。ただしそのときはページからスタイルを変えられないので、必要なschemeで描いてください。アクセシブルですか。 各アイコンは、日付を表すラベルを持つrole="img"です。アクセシビリティとテーマを参照してください。デザインを足せますか。 デザインは1つのファイルで、満たすべき決まりはアーキテクチャにあります。
この日本語は、まだ日本語を母語とする方の確認を受けていません。訂正を歓迎します。