Search code examples
javascriptnode.jshapi.js

Running @hapi/hapi giving error "#meetings = null SyntaxError: Invalid or unexpected token"


Was using

@hapi/hapi : ^20.0.0

node.js : v10.19.0

Got the following error stack

|     #meetings = null;
|     ^
| 
| SyntaxError: Invalid or unexpected token
|     at Module._compile (internal/modules/cjs/loader.js:723:23)
|     at Object.Module._extensions..js (internal/modules/cjs/loader.js:789:10)
|     at Module.load (internal/modules/cjs/loader.js:653:32)
|     at tryModuleLoad (internal/modules/cjs/loader.js:593:12)
|     at Function.Module._load (internal/modules/cjs/loader.js:585:3)

Was using the following code

'use strict';

const Hapi = require('@hapi/hapi');

const init = async () => {

    const server = Hapi.server({
        port: 5000,
        host: 'localhost'
    });

    await server.start();
    console.log('Server running on %s', server.info.uri);
};

process.on('unhandledRejection', (err) => {

    console.log(err);
    process.exit(1);
});

init();

Solution

  • You should upgrade the Node version to 12+ which supports private class fields like #meetings.


    References: Table of Compatibility