0
我最近在AWS上开始了Lambda函数开发。当尝试导入JavaScript文件,我收到以下错误,AWS Lambda模块初始化错误
module initialization error: ReferenceError
at Object.<anonymous> (/var/task/model/claim_type.js:3:29)
at Module._compile (module.js:570:32)
at Object.Module._extensions..js (module.js:579:10)
at Module.load (module.js:487:32)
at tryModuleLoad (module.js:446:12)
at Function.Module._load (module.js:438:3)
at Module.require (module.js:497:17)
at require (internal/module.js:20:19)
at Object.<anonymous> (/var/task/index.js:2:19)
at Module._compile (module.js:570:32)
at Object.Module._extensions..js (module.js:579:10)
at Module.load (module.js:487:32)
at tryModuleLoad (module.js:446:12)
at Function.Module._load (module.js:438:3)
at Module.require (module.js:497:17)
at require (internal/module.js:20:19)
在根级别我有index.js文件和claim_type.js文件模型目录中。
index.js
const Sequelize = require('sequelize');
const ClaimType = require('./model/claim_type.js');
exports.handler = function (event, context, callback) {
//function content
}
claim_type.js
const Sequelize = require('sequelize');
const ClaimType = sequelize.define('claimtype', {
id: {
type: Sequelize.INTEGER,
autoIncrement: true,
primaryKey: true
},
name: {
type: Sequelize.STRING
}
}, {
timestamps: false
});
module.exports = ClaimType;
什么是导入claim_type.js正确的方法是什么?
它看起来像没有找到sequelize。您是否将node_modules目录与自己的源一起部署到lamdba? – mtkopone
是的,我使用命令* zip -r Lambda-Deployment.zip * -x * .zip * .json * .log *来创建zip文件。我认为这与sequelize没有关系,因为直到我将* ClaimType *移动到单独的文件中,它才能正常工作。 – Lakmal