Tengo una función que he hecho en un archivo .js y estoy tratando de importar y usar la función en una ruta para obtener una compilación de aplicaciones, pero sigo recibiendo este error

internal/modules/cjs/loader.js:888
  throw err;
  ^

Error: Cannot find module './crawler/ocr-crawler.js'

Así es como se configura la función:

async function OcrCrawlerTest(){

 // some code here
}

module.exports = {OcrCrawlerTest};

Y así es como lo estoy llamando:

const { OcrCrawlerTest } = require('./crawler/ocr-crawler.js');

Soy nuevo en JavaScript, así que por favor dé un detalle en la solución.

Además, si es necesario, mi estructura de ruta se configura como se muestra:

--- main directory 
    └── app.js
    └── crawler
         └── ocr-crawler.js
    └── routes
         └── crawler.js
0
tina 29 may. 2021 a las 12:16

2 respuestas

La mejor respuesta

En su archivo "App.js", puede usar el código a continuación. Nodejs caminará por su directorio para encontrar el módulo apropiado.

const { OcrCrawlerTest } = require('./crawler/ocr-crawler'); // remove ".js" at the end

Puede encontrar más información en este documento


editar En caso de que se lo exija OCRCRWRWLERTST, desde el archivo routes/crawler.js, debe proporcionar la ruta relativa del archivo routes/crawler.js a crawler/ocr-crawler.js Archivo:

const { OcrCrawlerTest } = require('../crawler/ocr-crawler'); 
1
Đăng Khoa Đinh 29 may. 2021 a las 11:20

Prueba cambiando module.exports = {OcrCrawlerTest} a module.exports = OcrCrawlerTest; y const { OcrCrawlerTest } = require('./crawler/ocr-crawler.js') a const OcrCrawlerTest = require('./crawler/ocr-crawler.js')

1
SAMUEL OWAD 29 may. 2021 a las 09:22