Class constructor FileManager cannot be invoked without 'new'

bug:今天项目重新安装依赖打包的时候出现错误:

Class constructor FileManager cannot be invoked without 'new'

解决:尝试了很多种解决方案,锁定有效解决方案

1. 修改package.json 里面的:"less": "^3.9.0"为"less": "~3.9.0"

2. 删除node_modules,然后重新安装打包,成功打包

  • 1
    点赞
  • 1
    收藏
    觉得还不错? 一键收藏
  • 3
    评论
### 回答1: 这个错误提示是因为你在调用一个类的构造函数时,没有使用 `new` 关键字。在 JavaScript 中,如果你想创建一个类的实例,必须使用 `new` 关键字来调用它的构造函数。 例如: ``` class MyClass { constructor() { // 构造函数代码 } } // 创建 MyClass 的实例 const myInstance = new MyClass(); ``` 如果你不使用 `new` 关键字来调用构造函数,就会出现类似于“class constructor MyClass cannot be invoked without 'new'”这样的错误提示。 ### 回答2: class constructor servecommand cannot be invoked without 'new' 是一个 JavaScript 错误提示信息,它的意思是,在不使用关键字 "new" 的情况下无法调用类构造函数 servecommand。 在 JavaScript 中,一个类的构造函数是在类实例化的时候被自动调用的,用来初始化类的属性和方法。而当我们想要实例化一个类时,需要使用 "new" 关键字来调用构造函数。但是,如果在调用构造函数时忘记使用 "new" 关键字,就会触发该错误。 这个错误可能出现在下面这样的代码中: ``` class ServeCommand { constructor() { this.commandName = "serve"; this.description = "Start the server"; } } const command = ServeCommand(); // 错误 ``` 上面的代码中,我们定义了一个 ServeCommand 类,其中 constructor() 方法用来初始化类的属性和方法。但是当我们尝试实例化 ServeCommand 类时,直接调用了构造函数 ServeCommand(),而没有使用 "new" 关键字,因此就会触发 "class constructor servecommand cannot be invoked without 'new'" 错误。 要解决这个问题,我们只需要在实例化 ServeCommand 类时正确地使用 "new" 关键字: ``` const command = new ServeCommand(); // 正确 ``` 这样,就能成功实例化 ServeCommand 类,并执行相应的构造函数。 ### 回答3: 这个错误意味着您在调用类构造函数servecommand时没有使用 "new" 关键字,但却试图直接调用它,从而导致错误。 在JavaScript中,类构造函数必须使用 "new" 关键字来创建类的实例。如果没有使用 "new" 关键字,则构造函数不会返回类的实例,而是返回 undefined。因此,当您尝试使用未定义的实例时,就会抛出该错误。 为了解决这个错误,您应该始终确保在调用类构造函数时使用 "new" 关键字。例如,应该这样调用servecommand类的构造函数: var myServeCommand = new servecommand(); 这将创建一个新的类实例,并将其分配给变量 myServeCommand。您可以随后在代码中使用这个变量来与servecommand类实例进行交互。 总之, "class constructor servecommand cannot be invoked without 'new' " 错误是由于没有使用 "new" 关键字来调用servecommand类构造函数而引起的。为了避免这个错误,您应该始终使用 "new" 关键字来实例化类。
评论 3
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值