Функция импорта Firebase из другого файла - javascript - PullRequest
0 голосов
/ 09 мая 2018

Я строю функцию firebase с помощью JavaScript. Теперь у меня много функций между вызовами, и я планирую переместить эти функции в другой файл, чтобы index.js не запутался.

Ниже приведена текущая структура файла:

/functions
   |--index.js
   |--internalFunctions.js
   |--package.json
   |--package-lock.json
   |--.eslintrc.json

Я хочу знать:

1) Как экспортировать функцию из internalFunctions.js и импортировать ее в index.js.

2) Как вызвать функцию internalFunctions.js из index.js.

Мой код написан на JavaScript.

Отредактировано

internalFunction.js будет иметь несколько функций.

1 Ответ

0 голосов
/ 09 мая 2018

Сначала вы установите функцию в вашем файле:

internalFunctions.js:

module.exports = {
    HelloWorld: function test(event) {
        console.log('hello world!');
    }
};

Или, если вам не нравится много возиться с фигурными скобками:

module.exports.HelloWorld = function(event) {
    console.log('hello world!');
}

module.exports.AnotherFunction = function(event) {
    console.log('hello from another!');
}

Есть и другие стили, которые вы можете использовать: https://gist.github.com/kimmobrunfeldt/10848413

Затем в ваш файл index.js импортируйте файл как модуль:

const ifunctions = require('./internalFunctions');

И затем вы можете вызывать его напрямую в своих триггерах или HTTP-обработчиках:

ifunctions.HelloWorld();

Пример:

//Code to load modules 
//...
const ifunctions = require('./internalFunctions');

exports.myTrigger = functions.database.ref('/myNode/{id}')
    .onWrite((change, context) => {

      //Some of your code...        

      ifunctions.HelloWorld();

      //A bit more of code...

});
...