17

I get this error when I try to run an async function described in a class

masterClass.js

class MasterClass{

  async function updateData(a, b){
    let [ res1, res2 ] = await Promise.all(call1, call2);
    return  [ res1, res2 ]
  }

}

test.js

const MasterClass =  require('./MasterClass.js')
let m = new MasterClass()
m.updateData(a, b)

Error

async function updateData(a, b){
                 ^^^^^^^^^^
SyntaxError: Unexpected identifier
Leo
  • 413
  • 2
  • 5
  • 11

1 Answers1

24

You dont need function as pointed out by @dfsq in the comments

Then you have to use module.exports or export to exposed your class as a module.

masterclass.js

module.exports = class MasterClass{

  async updateData(a, b){
    let [ res1, res2 ] = await Promise.all(call1, call2);
    return  [ res1, res2 ]
  }

}
Stamos
  • 3,938
  • 1
  • 22
  • 48