Převod CommonJS modulů na ES v JavaScriptu
Doposud lze v různých dokumentacích narazit na importy ve stylu CommonJS modulů. Musíte se naučit převádět tyto importy na standardní ES moduly.
V CommonJS se importy provádějí pomocí příkazu
require, jehož parametrem je uvedena
cesta k modulu. Výsledek příkazu se zapíše
do proměnné:
let math = require('./math');
Přepišme tento kód do stylu ES.
Nejprve si všimněte,
že v CommonJS se nepíše přípona .js
pro soubory, zatímco v ES - píše.
Dále vše závisí na tom, zda modul exportuje výchozí export nebo obyčejný. V CommonJS není rozdíl, ale v ES modulech - je. Zpravidla je rozdíl patrný z příkladů kódu, nebo můžete jednoduše zkusit obě varianty importu.
V našem případě se uvedený import přepíše buď do této podoby:
import math from './math.js';
Nebo do této podoby:
import * as math from './math.js';
Přepište následující kód do stylu ES modulů:
let {square, cube} = require('./math');
Přepište následující kód do stylu ES modulů:
let math = require('./math');
let res = math.square(2) + math.cube(3);
Přepište následující kód do stylu ES modulů:
let sum = require('./sum');
let res = sum([1, 2, 3]);