環境:
antd: バージョン 4.22.4
反応: バージョン 18.2.0
エラーのスクリーンショット:
antdから導入されたDatePickerの日付選択ボックスはグローバルに設定されており、中国語パッケージもグローバルに導入されていますが、有効な年のみ中国語で、その他のテキストはすべて英語です。
import dayjs from 'dayjs';
import 'dayjs/locale/zh-cn';
import locale from 'antd/locale/zh_CN';
<ConfigProvider locale={locale}>
<DatePicker defaultValue={dayjs('2015-01-01', 'YYYY-MM-DD')} />
</ConfigProvider>;
単一の中国語構成をインポートしようとしましたが、結果は依然として無効です。結果は上記と同じです。
長い間オンラインで検索した後、この問題はまだ解決していません。当初、antd のバージョンを v5 にアップグレードしたかったのですが、現在のプロジェクトのスタイルに影響を与えることを考慮して、採用しませんでした。後で解決しました。この問題は、node_modules/moment の中国語パッケージを導入することで解決されます。
解決策は次のとおりです。
グローバル構成環境に、moment 構成ファイルを導入します。
このファイルはnode_modules配下にあり、momentファイルがない場合はnpm install momentで自分でインポートすることができます。
すべての~~~~ゲーム
1.設定ファイルの導入
import zhCN from 'antd/lib/locale/zh_CN'
import 'moment/dist/locale/zh-cn'
2. 設定パラメータ
<ConfigProvider locale={zhCN }>
<DatePicker/>
</ConfigProvider>;
シングル~~~~
1.現在のコードに設定ファイルを導入します。
import zhCN from 'antd/lib/locale/zh_CN'
import 'moment/dist/locale/zh-cn'
2. 設定パラメータ
<DatePicker locale={zhCN} />
React でエラーを報告する赤い波線が表示される場合があります。中国語言語パッケージの導入や通常の翻訳には影響しません。
結果グラフ: