Мои облачные функции Firebase настроены на отдельные файлы (functionName.f. js), а затем мой индекс. js файл экспортирует файлы в виде функций со следующим фрагментом кода:
index . js file
for (let f = 0, fl = files.length; f < fl; f++) {
const file = files[f];
const functionName = camelCase(file.slice(0, -5).split('/').join('_')); // Strip off '.f.js'
if (!process.env.FUNCTION_NAME || process.env.FUNCTION_NAME === functionName) {
exports[functionName] = require(file);
}
}
exports = module.exports.function1 = function1();
exports = module.exports.function2 = function2();
//omitted function1 and function2 code
Я пытаюсь повторно использовать код в нескольких различных функциональных файлах. На данный момент у меня есть функции, которые я хочу повторно использовать в моем файле 'index. js' - я затем ссылаюсь на файл index. js в любом файле функции, в котором я хочу вызвать эти функции следующим образом:
function1.f. js file
const helpers = require('../index');
const functions = require('firebase-functions');
const admin = require('firebase-admin');
exports = module.exports = functions.https.onCall(async (data, context) => {
await helpers.function1;
}
Проблема в том, что когда на функцию1 ссылаются, как указано выше, функция2, похоже, тоже выполняется, хотя ее никогда не вызывали.
my eslintr c. json соответствующий раздел файла
"parserOptions": {
// Required for certain syntax usages
"ecmaVersion": 2018,
"sourceType": "module"
},