#javascript #amazon-web-services #aws-lambda
#javascript #amazon-веб-сервисы #aws-lambda
Вопрос:
Я использую одни и те же функции в разных местах моего лямбда-кода. Поэтому я хотел бы переместить их в отдельную папку, чтобы код было легче читать.
Чтобы дать вам представление: это основная функция, из которой я хотел бы вызвать функцию (например, «ShowMessage ()»):
var AWS = require('aws-sdk');
var dynamodb = new AWS.DynamoDB.DocumentClient({ region: 'eu-central-1', apiVersion: '2012-08-10' });
const functions = require("functions")
exports.handler = (event, context, callback) => {
//invokes function in separate folder
functions.showMessage();
}
Это файл, в котором я хотел бы сохранить функции.
// function in separate folder
function showMessage() {
console.log("Message from function")
}
Следовательно, я хотел бы знать, как правильно это настроить и как правильно вызвать функцию из основного потока
Комментарии:
1. Не могли бы вы, пожалуйста, удалить эти #-#- # ? И, может быть, добавить код прямо здесь? Я не хочу увеличивать скриншоты.
2. Мне пришлось опубликовать скриншоты, потому что это скорее вопрос о структуре, чем о кодировании. Мне нужно было показать, где я хотел разместить / передать функции на аутсорсинг.
3. А вы читали документацию по модулю ? Если да, что именно у вас не сработало?
4. Нет,
functions/functions.js:
было бы достаточно показать нам структуру файлов5. Дорогой Джонас, я также опубликовал код. Надеюсь, это поможет понять мою проблему
Ответ №1:
Вы можете сделать это, объявив функции как экспорт модуля.
/* functions.js */
module.exports = {
showMessage: function() {
// code
},
anotherOne: function() {
// code
}
};
/* index.js */
const functions = require('./functions/functions.js');
functions.showMessage();