Я пытаюсь установить язык Chart.js в приложении React.
Метод 1
Использовать в комплекте *Версия 1009 *, поскольку я не использую moment
в остальной части приложения:
import Chart from 'chart.js/dist/Chart.bundle.min.js';
Проблема: Как установить язык?moment
недоступен как глобальный объект, и я не могу найти его как свойство Chart
или любого из его экземпляров, а также нет API для изменения языкового стандарта.
Метод 2
Используйте не входящую в комплект версию и включите moment
себя.
import * as moment from 'moment';
import 'moment/locale/es';
import Chart from 'chart.js/dist/Chart.min.js';
Затем в коде перед рендерингом диаграммы:
moment.locale('es');
chart = new Chart(type, options);
Проблема: , но это выдает ошибку:
Error: Chart.js - Moment.js could not be found! You must include it before Chart.js to use the time scale. Download at https://momentjs.com
Я попытался присвоить moment
локальному объекту как window.moment = moment
, но та же ошибка.
(Метод) Hack 3
Просто для проверки я скопировал moment.js
и es.js
файлы в папку public
и включил их в качестве <script>
тегов в index.html
, и это сработало, но я неМне не нужен такой взлом.
Примечания
Я знаю некоторые библиотеки React для Chart.js, но не хочу их использовать.
Я читал другой пост, где они предлагают перезагрузить диаграмму, если локаль была изменена до того, как она была отображена.
[https://stackoverflow.com/questions/38202587/chart-js-moment-locale][https://stackoverflow.com/questions/38202587/chart-js-moment-locale]
https://github.com/apertureless/vue-chartjs/issues/101
https://github.com/chartjs/Chart.js/issues/5284
https://github.com/chartjs/Chart.js/issues/2906