javascript - 我创建的类不导出对象

标签 javascript class object

我需要在文件 ShoppingCart.js 中创建 ShoppingCart 类并将其导出到测试文件,但出现错误:我的类不是构造函数

我知道问题不在于导入导出,因为在创建 js 文件之前我收到错误,它找不到模块。我还尝试在文件中创建该类的新实例并且它有效

file ShoppingCart.js
class ShoppingCart{
    constructor(name){
        this.name=name
    }
}

module.exports = { ShoppingCart}

我的测试文件的代码是

 const ShoppingCart = require("./ShoppingCart")
 new ShoppingCart()

当我运行测试文件时,我得到

TypeError: ShoppingCart is not a constructor

最佳答案

您当前正在导出一个属性ShoppingCart的对象:

module.exports = { ShoppingCart }
//               ^^   object   ^^

只需导出ShoppingCart:

module.exports = ShoppingCart;

或者,在导入时,引用对象的 ShoppingCart 属性:

const { ShoppingCart } = require("./ShoppingCart")

关于javascript - 我创建的类不导出对象,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/56504910/

相关文章:

javascript - 如何使用按钮将商品添加到页面底部的购物车?

javascript - 将表格行传递给 Angular 中的函数

c++ - 如何检查对象是否已在 C++ 中初始化/创建?

java - 将多个 Address 对象从 Person 类存储到 TreeSet 中

JavaScript 创建和删除 "li"标签

flash - 很久以前(有时)删除的 as2 类代码与日志跟踪一起执行

Javascript - 反射(reflect)封装的成员

javascript - 提取 Javascript 对象中的嵌套值

javascript - Jquery 引用这个

来自 12 小时格式日期和时间字符串的 JavaScript 新日期