Путаница между Coffeescript и node.js. требуют создания экземпляров класса?

У меня возникли проблемы с попыткой заставить мой класс работать в моем файле node.js. Когда мне нужен модуль, который я написал, './module' вызывает мой конструктор и выдает ошибку. Но я действительно хочу создать экземпляр позже в файле.

т.е.

class Mic

constructor: (x) ->
  @t = []
  @t.push x

exports.Mic = Mic

и вот мой файл app.coffee

require 'coffee-script'
require './Mic'

Когда я запускаю app.coffee, он выдает исключение ReferenceError: x не определен. Это имеет смысл с момента вызова конструктора, но почему он вызывает конструктор, хотя я не вызывал 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)
6
задан Faisal Abid 27 May 2012 в 06:43
поделиться