我在尝试让我的类在我的 node.js 文件中工作时遇到问题。当我需要我编写的模块时,require './module' 调用我的构造函数并给出错误。但我实际上想稍后在文件中实例化。
IE
class Mic
constructor: (x) ->
@t = []
@t.push x
exports.Mic = Mic
这是我的 app.coffee 文件
require 'coffee-script'
require './Mic'
当我运行 app.coffee 时,它会给出一个异常 ReferenceError: x is not defined。这是有道理的,因为它调用了构造函数,但是为什么即使我没有调用 new Mic 也调用构造函数?
编辑 修复缩进后
class Mic
constructor: (x) ->
@t = []
@t.push x
exports.Mic = Mic
并将我的 app.coffee 更新为
Mic = require './Mic'
m = new Mic 3
console.log m
我得到错误
TypeError: object is not a function
at Object.CALL_NON_FUNCTION_AS_CONSTRUCTOR (native)