Estamos tratando de usar las nuevas formas de exportar e importar módulos para ES6 con Node.js. Es importante para nosotros obtener el número de versión del archivo package.json . El siguiente código debería hacer eso:
import {name, version} from '../../package.json'Sin embargo, en la ejecución se arroja el siguiente error:
TypeError [ERR_UNKNOWN_FILE_EXTENSION]: Unknown file extension ".json" for T:\ICP\package.json imported from T:\ICP\src\controllers\about.js ¿Hay algo que nos estamos perdiendo?
¿La extensión .json no es compatible?
¿Hay otra forma de recuperar esta información usando Node.js 13+?
De acuerdo con los documentos Node.js ES Modules --experimental-json-modules . es necesario para importar archivos JSON.
Incluya la marca --experimental-json-modules para que el módulo funcione.
node --experimental-json-modules about.jsPuede importar el require de alféizar en un módulo ES6 para Node.js:
import { createRequire } from "module"; // Bring in the ability to create the 'require' method const require = createRequire(import.meta.url); // construct the require method const my_json_file = require("path/to/json/your-json-file.json") // use the require method