0

我有一个在 .js 文件中创建的函数,我正在尝试在应用程序构建的 get 路由中导入和使用该函数,但我不断收到此错误

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

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

这是该功能的设置方式:

async function OcrCrawlerTest(){

 // some code here
}

module.exports = {OcrCrawlerTest};

这就是我所说的:

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

我是 javascript 新手,所以请在解决方案中提供一些详细信息

如果需要,我的路径结构也设置如下:

--- main directory 
    └── app.js
    └── crawler
         └── ocr-crawler.js
    └── routes
         └── crawler.js
4

2 回答 2

1

尝试更改module.exports = {OcrCrawlerTest}tomodule.exports = OcrCrawlerTest;const { OcrCrawlerTest } = require('./crawler/ocr-crawler.js')toconst OcrCrawlerTest = require('./crawler/ocr-crawler.js')

于 2021-05-29T09:22:04.753 回答
1

在您的“app.js”文件中,您可以使用下面的代码。NodeJS 将遍历您的目录以找到适当的模块。

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

您可以在本文档中找到更多信息


编辑 如果您需要文件中的 OcrCrawlerTest routes/crawler.js,您需要提供routes/crawler.js文件到crawler/ocr-crawler.js文件的相对路径:

const { OcrCrawlerTest } = require('../crawler/ocr-crawler'); 
于 2021-05-29T09:27:11.820 回答