我在嘗試讓我的課程在我的node.js文件中工作時遇到問題。當我需要我編寫的模塊時,require'./module'調用我的構造函數並給出錯誤。但我實際上想稍後在文件中實例化。Coffeescript和node.js混淆。需要實例化類?
即
class Mic
constructor: (x) ->
@t = []
@t.push x
exports.Mic = Mic
,這裏是我的app.coffee文件
require 'coffee-script'
require './Mic'
當我運行app.coffee它給出了一個例外的ReferenceError:X沒有定義。這是有道理的,因爲它調用構造函數,但爲什麼它調用構造函數,即使我沒有叫新的麥克風?
編輯 我app.coffee固定壓痕
class Mic
constructor: (x) ->
@t = []
@t.push x
exports.Mic = Mic
,並更新到
Mic = require './Mic'
m = new Mic 3
console.log m
後,我得到的錯誤
TypeError: object is not a function
at Object.CALL_NON_FUNCTION_AS_CONSTRUCTOR (native)
哎,哎呀,我忘了更換菜w^ith Mic。這是一個複製和粘貼問題。我縮進了我的代碼,現在我得到一個TypeError:對象不是Object.CALL_NON_FUNCTION_AS_CONSTRUCTOR處的函數。該代碼不會自動實例化,直到我打電話給麥克風=新的麥克風3時,然後給出以前的錯誤。 –
相應地更新了答案。 – Ashe
啊,我們走吧。謝謝你做到了! –