Как исправить Uncaught Error: Этот метод не реализован в реактивной диаграмме js -2 - PullRequest
0 голосов
/ 02 мая 2020

Я использую react-chartjs-2 для создания линейного графика. В этой группе я хочу использовать время в xAxes. Но я получаю следующую ошибку.

Chart.js:10609 Uncaught Error: This method is not implemented: either no adapter can be found or an incomplete integration was provided

Вот мой код.

render() {
    var startDate = moment().subtract(1, 'year').format('MMM YYYY');
    var endDate = moment().format('MMM YYYY');
    const data = {
      labels: [startDate, endDate],
      datasets: [
        {
          label: 'NPS Score',
          fill: false,
          lineTension: 0.2,
          backgroundColor: 'rgba(75,192,192,0.4)',
          borderColor: 'rgba(75,192,192,1)',
          borderDash: [],
          borderDashOffset: 0.0,
          pointBorderColor: 'rgba(75,192,192,1)',
          pointBackgroundColor: '#fff',
          pointBorderWidth: 1,
          pointHoverRadius: 5,
          pointHoverBackgroundColor: 'rgba(75,192,192,1)',
          pointHoverBorderColor: 'rgba(220,220,220,1)',
          pointHoverBorderWidth: 2,
          pointRadius: 1,
          pointHitRadius: 10,
          data: this.state.data,
        },
      ],
    };

    const lineOptions = {
      scales: {
        xAxes: [
          {
            type: 'time',
            time: {
              unit: 'month',
              tooltipFormat: 'lll',
            },
            ticks: {
              maxTicksLimit: 12,
            },
          },
        ],
        yAxes: [
          {
            stacked: true,
            gridLines: {
              display: false,
            },
            ticks: {
              suggestedMin: 100,
              suggestedMax: 0,
            },
          },
        ],
      },
      legend: {
        display: false,
      },
      tooltips: {
        enabled: true,
      },
    };
    return <Line data={data} options={lineOptions} height={120} />;

Я не могу найти способ исправить это. Есть некоторые вопросы, которые имеют ту же ошибку, но не реагируют js. Кто-нибудь может мне с этим помочь. заранее спасибо.

1 Ответ

1 голос
/ 04 мая 2020

Проблема с моментом. js. Более новая версия имеет проблему. Лучше всего понизить версию. js версия. Вот как я это исправил.

1) Обновите версии зависимостей в пакете. json

"dependencies": {
    "chart.js": "2.9.3",
    "moment": "2.24.0",
    "moment-timezone": "^0.5.28",
    "react-chartjs-2": "2.9.0",
 }

2) Добавьте следующий код в пакет. json

"resolutions": {
    "moment": "2.24.0"
},

Теперь пакет. json должен выглядеть следующим образом

"dependencies": {
    "chart.js": "2.9.3",
    "moment": "2.24.0",
    "moment-timezone": "^0.5.28",
    "react-chartjs-2": "2.9.0",
},
"resolutions": {
    "moment": "2.24.0"
},

Обратите внимание, что я не включил все пакеты здесь.

3) Удалить всю папку node_modules и .lock файл (yarn.lock или package-lock. json)

4) запустить yarn install или npm install

Это сработало для меня.

...