注意:我在节点14.1上
所以我现在试着这样做:
import "module-alias/register";这给了我一个错误
Error [ERR_MODULE_NOT_FOUND]: Cannot find module错误路径为:
node_modules/module-alias/register但是如果我使用commonjs
require("module-alias/register");它起作用了。
import和require之间导致斜杠变成错误的区别是什么?
发布于 2020-05-15 14:24:15
1)每当您使用导入时,
import "module-alias/register";此时编译器会检查你的模块导入寄存器的相对路径,在你的例子中,如果你想在NodeJs或javascript中使用语句,你必须指定他们模块的可用方法(它是ES6语法),例如。如果你的模块寄存器中有profile方法,那么你可以写下下面这样的代码,
import { profile } form "module-alias/register";2)无论何时使用require,
require("module-alias/register");它与导入特性相同,但有一点不同,您不能指定模块寄存器的任何特定方法(它是通用JS语法)。在上面的示例中,您不能指定模块寄存器的配置文件方法。
3)
不同的是,是指定的,任何模块的特定方法,在
的语法
发布于 2020-05-15 13:56:55
import和require之间的区别在于import是ES6语法,这是正确的语法,您需要从Ex : express-validator中导入一些内容。
import { check, validationResult } from 'express-validator';另外,导入可以是异步的。
发布于 2020-05-15 14:48:06
register是一个js文件,并且导入需要显式扩展名,因此import "module-alias/register";将无法工作
但import "module-alias/register.js";会的。
https://stackoverflow.com/questions/61812530
复制相似问题