2017-11-23 3 views
0

client.jsそれは

const CSGO = require('./csgo') 

module.exports = class Client { 
    constructor() { 

    } 

    csgo(data) { 
     return new Promise((resolve, reject) => { 
      resolve(new CSGO(data)) 
      .catch(err => reject(err)) 
     }) 
    } 

}; 

csgo.js

module.export = class CSGO { 
    constructor(content) { 
     // super(); 
     this.content = content; 
    } 

    parseData() { 
     console.log(content + ' it works') 
    } 
} 

test.js

var client = require('./src/client.js') 

const game = new client(); 

game.csgo('hello') 

を定義していますにもかかわらず、 "xはコンストラクタではありません"私はconteを渡そうとしているntsからtest.js => client.js => csgo.js、しかし私はgame.csgo(contents')を呼び出すと、クライアントから、new CSGOのデータを作成すると、私はTypeError CSGOはコンストラクタではないと言っています。私は何をすべきか?

+0

「クライアント」または「クライアント」? JavaScriptは大文字と小文字を区別しています*。コードを質問に書き直すのは、タイプミスであれば、[最小、完全、および検証可能な例](http://stackoverflow.com/help/mcve)の作成方法、代わりにこのようなコードを書き換えると、無関係なエラーが混乱する可能性があります。場合によっては間違って問題を解決し、疑問を解決することもあります。 –

+0

'module.exports'ではなく' module.exports'です。 – Bergi

+2

あなたの 'csgo'メソッドはとにかく動作しません。 'resolve'は何も返しません。それに対して' .catch'を呼び出すのは間違いです。また、新しいプロミスをただちに値で解決したい場合は、 'Promise.resolve'を使用してください。なぜここで約束をしているのですか? – Bergi

答えて

0

私はそれが単なる誤植であると信じています。 csgo.jsにmodule.exportsを意味するmodule.exportがあります。