Me gustaría agregar la extensión .js
a todas las declaraciones de importación donde la ruta del archivo que se importará comienza con un .
. Por ejemplo:
import { LocalConf } from "./database/LocalConf"; import * as mariadb from "mariadb"; import { Errors } from "./util/Errors";
se transforma en
import { LocalConf } from "./database/LocalConf.js"; import * as mariadb from "mariadb"; import { Errors } from "./util/Errors.js";
Este es el comando js que estoy ejecutando:
let newData = data.replace(/(import .*? from\s+['"])(\..*?[^\.js])(?=['"])/g, '$1$2.js')
Desafortunadamente [^\.js]
coincide con un solo carácter y no con una cadena .js
. por eso,
import { Errors } from "./util/Errors";
nunca se agrega .js
.
¿Cómo puedo hacer coincidir la cadena .js
en lugar de solo caracteres individuales?
¿Podrías hacer algo como esto?
function addExtension(path) { if (path.contains('from "./')) { return path + ".js"; } return path; }