Logo Questions Linux Laravel Mysql Ubuntu Git Menu
 

Cannot use import statement outside a module in Lambda function

I have created a lambda function to get the list of items stored in dynamodb. Then i executed npm run build command after which i got .js files. I zipped the dist contents along with node modules, webpack.config.js and package.json and uploaded it. When i try to test it, am getting the following error. But there is no error in the code as far as i checked.

{
  "errorType": "Runtime.UserCodeSyntaxError",
  "errorMessage": "SyntaxError: Cannot use import statement outside a module",
  "trace": [
    "Runtime.UserCodeSyntaxError: SyntaxError: Cannot use import statement outside a module",
    "    at _loadUserApp (/var/runtime/UserFunction.js:98:13)",
    "    at Object.module.exports.load (/var/runtime/UserFunction.js:140:17)",
    "    at Object.<anonymous> (/var/runtime/index.js:43:30)",
    "    at Module._compile (internal/modules/cjs/loader.js:956:30)",
    "    at Object.Module._extensions..js (internal/modules/cjs/loader.js:973:10)",
    "    at Module.load (internal/modules/cjs/loader.js:812:32)",
    "    at Function.Module._load (internal/modules/cjs/loader.js:724:14)",
    "    at Function.Module.runMain (internal/modules/cjs/loader.js:1025:10)",
    "    at internal/main/run_main_module.js:17:11"
  ]
}
like image 508
Shobana VK Avatar asked Dec 18 '25 09:12

Shobana VK


1 Answers

I had the same error with node uuid module. Importing and using it as below fixed my issue:

'use strict';
const uuid = require('uuid');   // <-- how to import

exports.hello = async (event) => {
   // ...

   uniqueId = uuid.v4();  // <-- how to use it

   // ...
};
like image 149
Ashan Priyadarshana Avatar answered Dec 21 '25 02:12

Ashan Priyadarshana



Donate For Us

If you love us? You can donate to us via Paypal or buy me a coffee so we can maintain and grow! Thank you!