相关疑难解决方法(0)

如果我导入没有 `js` 扩展名的文件,ExpressJs 会返回错误 `ERR_MODULE_NOT_FOUND`

我通过 ES6 构建了一个 expressJs 应用程序,但出现以下错误:

(node:4132) ExperimentalWarning: The ESM module loader is experimental.
internal/modules/run_main.js:54
    internalBinding('errors').triggerUncaughtException(
                              ^

Error [ERR_MODULE_NOT_FOUND]: Cannot find module 'E:\wamp64\www\myDemos\nodeJs\expressJsExample\config\app' imported from E:\wamp64\www\myDemos\nodeJs\expressJsExample\server.mjs
?[90m    at finalizeResolution (internal/modules/esm/resolve.js:255:11)?[39m
?[90m    at moduleResolve (internal/modules/esm/resolve.js:603:10)?[39m
?[90m    at Loader.defaultResolve [as _resolve] (internal/modules/esm/resolve.js:644:13)?[39m
?[90m    at Loader.resolve (internal/modules/esm/loader.js:94:40)?[39m
?[90m    at Loader.getModuleJob (internal/modules/esm/loader.js:240:28)?[39m
?[90m    at ModuleWrap.<anonymous> (internal/modules/esm/module_job.js:42:40)?[39m
?[90m    at link (internal/modules/esm/module_job.js:41:36)?[39m {
  code: ?[32m'ERR_MODULE_NOT_FOUND'?[39m
}
[nodemon] app crashed - waiting for file changes before starting...
Run Code Online (Sandbox Code Playgroud)

如果我使用import app from './config/app.js';然后工作但如果我使用import app from './config/app';然后返回上述错误。 …

node.js express ecmascript-6 es6-modules

15
推荐指数
5
解决办法
2万
查看次数

ES6导入/导出是否需要".js"扩展名?

我安装了chrome beta - 版本60.0.3112.24(官方版本)测试版(64位)

在chrome:// flags/I启用'实验Web平台功能'(参见https://jakearchibald.com/2017/es-modules-in-browsers)

然后我尝试了:

<script type="module" src='bla/src/index.js'></script>
Run Code Online (Sandbox Code Playgroud)

其中index.js有一行如下:

export { default as drawImage } from './drawImage';
Run Code Online (Sandbox Code Playgroud)

这是指现有的文件drawImage.js

我在控制台得到的是错误

GET http://localhost/bla/src/drawImage 
Run Code Online (Sandbox Code Playgroud)

如果我更改导出并添加".js"扩展名,它可以正常工作.

这是一个chrome bug还是ES6在这种情况下要求扩展?

webpack也可以在没有扩展的情况下构建它!

javascript es6-modules

10
推荐指数
2
解决办法
3974
查看次数

标签 统计

es6-modules ×2

ecmascript-6 ×1

express ×1

javascript ×1

node.js ×1