Ecmascript 6 如何在膝关节炎项目中设置模块分解器?

Ecmascript 6 如何在膝关节炎项目中设置模块分解器?,ecmascript-6,koa,koa2,Ecmascript 6,Koa,Koa2,我在我的项目中使用了“koa”:“2.13.0”,,并且 我有一个.lrc文件: { "presets": [ [ "@babel/preset-env", { "targets": { "node": "current" } } ] ], "plugins":

我在我的项目中使用了
“koa”:“2.13.0”,
,并且 我有一个.lrc文件:

{
  "presets": [
    [
      "@babel/preset-env",
      {
        "targets": {
          "node": "current"
        }
      }
    ]
  ],
  "plugins": [
    ["@babel/plugin-transform-async-to-generator"],
    ["module-resolver", {
      "root": ["./"],
      "alias": {
        "app": "./app",
        "routes": "./routes",
        "utils": "./utils"
      }
    }]
  ]
}
在devdependences package.json上安装了“babel插件模块解析器”:“4.0.0”。但是,当我尝试使用“utils”进行请求时,它不起作用

const utils = require('utils')
出现以下错误:

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

Error: Cannot find module 'utils'
    at Function.Module._resolveFilename (internal/modules/cjs/loader.js:581:15)
    at Function.Module._load (internal/modules/cjs/loader.js:507:25)
    at Module.require (internal/modules/cjs/loader.js:637:17)
    at require (internal/modules/cjs/helpers.js:22:18)
    at Object.<anonymous> (D:\work\Smartwalkie\presence-server\routes\health\index.js:3:34)
    at Module._compile (internal/modules/cjs/loader.js:689:30)
    at Object.Module._extensions..js (internal/modules/cjs/loader.js:700:10)
    at Module.load (internal/modules/cjs/loader.js:599:32)
    at tryModuleLoad (internal/modules/cjs/loader.js:538:12)
    at Function.Module._load (internal/modules/cjs/loader.js:530:3)
internal/modules/cjs/loader.js:583
犯错误;
^
错误:找不到模块“utils”
位于Function.Module.\u resolveFilename(internal/modules/cjs/loader.js:581:15)
at Function.Module._load(内部/modules/cjs/loader.js:507:25)
at Module.require(内部/modules/cjs/loader.js:637:17)
根据需要(内部/modules/cjs/helpers.js:22:18)
反对。(D:\work\Smartwalkie\presence server\routes\health\index.js:3:34)
at模块编译(内部/modules/cjs/loader.js:689:30)
at Object.Module._extensions..js(internal/modules/cjs/loader.js:700:10)
在Module.load(内部/modules/cjs/loader.js:599:32)
在tryModuleLoad(内部/modules/cjs/loader.js:538:12)
at Function.Module._load(内部/modules/cjs/loader.js:530:3)

我试图让导入导出ES6与koajs项目上的模块解析器一起工作,但到目前为止还无法实现。请帮助。

事实证明,我应该在npm脚本上使用babel节点,而不是nodemon或node。要在我的案例中使用babel node,需要安装:

"@babel/core": "^7.12.3",
"@babel/node": "^7.12.6",
npm脚本应如下所示:

  "scripts": {
    "start": "babel-node app.js",
    "dev": "nodemon --exec babel-node app.js"
  }