Si te encuentras con algo que no comprendes puedes dejarlo en los comentarios y haremos todo lo necesario de ayudarte lo mas rápido que podamos.
Solución:
Para las exportaciones predeterminadas, debe usar:
import * as fs from 'fs';
O en caso de que el módulo haya nombrado exportaciones:
import fs from 'fs';
Ejemplo:
//module1.js
export function function1()
console.log('f1')
export function function2()
console.log('f2')
export default function1;
Y entonces:
import defaultExport, function1, function2 from './module1'
defaultExport(); // This calls function1
function1();
function2();
Además, debe usar Webpack o algo similar para poder usar ES6 import
El soporte de módulos ES6 en Node.js es bastante reciente; incluso en las versiones de vanguardia, todavía es experimental. Con Node.js 10, puede iniciar Node.js con el --experimental-modules
bandera, y probablemente funcionará.
Para importar versiones anteriores de Node.js, o Node.js 10 estándar, use la sintaxis de CommonJS:
const fs = require('fs');
Para usar import readFileSync from 'fs'
tienes que:
- Estar usando Node.js 10 o posterior
- Utilizar el
--experimental-modules
bandera (en Node.js 10), por ejemplonode --experimental-modules server.mjs
(ver #3 para una explicación de .mjs) - Cambie el nombre de la extensión de archivo de su archivo con el
import
declaraciones, a.mjs
, .js no funcionarápor ejemplo, servidor.mjs
Las otras respuestas dan en el 1 y el 2, pero el 3 también es necesario. Además, tenga en cuenta que esta función se considera extremadamente experimental en este punto (estabilidad de 1/10) y no se recomienda para producción, pero probablemente la seguiré usando.
Aquí está la documentación de ESM de Node.js 10.
Eres capaz de asentar nuestra función mostrando un comentario y puntuándolo te estamos eternamente agradecidos.