When developing for the Gutenberg / block editor, I see two methods used in various resources. Let's say I wanted to use i18n
The Gutenberg handbook sometimes does it like this:
Define
wp-i18n
as a dependency in thewp_register_script
block.Use
const { __ } = wp.i18n;
in the JavaScript.
But there is also documentation on how to do it like this:
Add
@wordpress/i18n
as a dependency.Use
import { __ } from '@wordpress/i18n';
in the JavaScript.
How do these ways differ and what is considered best practice in WordPress?