# Migration

# Migrating to v2.0.0

# Breaking Changes

Make sure to also read the Chart.js v3 migration guide (opens new window) since you may be impacted by more general breaking changes due to this new Chart.js version.

# Explicit Plugin Registration

As described in the getting started, it's now required to manually register this plugin, either globally:

Chart.register(ChartDeferred);

or locally:

new Chart('foo', {
  plugins: [ChartDeferred]
})

# Plugin registration

Chart.js v3 changed the way to register plugins and now requires to use Chart.register(plugin) instead of Chart.plugins.register(plugin).

import {Chart} from 'chart.js';
import ChartDeferred from 'chartjs-plugin-deferred';
Chart.register(ChartDeferred);

See Getting Started > Registration for details.

# Default options

The plugin default options are now accessible in Chart.defaults.plugins.deferred.* instead of Chart.defaults.global.plugins.deferred.* and can be modified using:

Chart.defaults.set('plugins.deferred', {
  delay: 100,
  // ...
})

# Notes

# Chart.js type declaration TS only

Chart.js v3 now provides TypeScript type declaration files bundled in the npm package so it's not anymore required to install the @types/chart.js package.