firebase cloud function 기능을 여러 개의 파일에 나누어 개발하기

2017-06-22 15:15

firebase의 유용한 기능 중의 하나는 cloud function을 사용할 수 있다. 그런데 기본으로 제공하는 javascript 파일이 index.js 파일 하나를 제공한다. function이 늘어나면 파일 하나로 처리하기에 복잡도가 높아진다. 이 같은 단점을 보완하기 위해 파일을 여러 개의 파일로 분리해 관리할 수 있다. 이건 javascript에 경험 있는 분들은 알 것 같다.

How do I structure Cloud Functions for Firebase to deploy multiple functions from multiple files? 문서를 참고해 파일을 여러 개의 파일로 분리했다.

firebase의 경우 다음과 같이 분리할 수 있다.

index.js

실질적인 firebase와 관련한 초기화 작업은 index.js에서 진행하고, 초기화한 admin은 function의 인자로 전달한다.

'use strict';

const functions = require('firebase-functions');
const admin = require('firebase-admin');

const courses = require('./courses');

admin.initializeApp(functions.config().firebase);

exports.courseUserChange = functions.database.ref('/course-users/{courseId}/{userId}').onWrite(event => courses.courseUserChange(event, admin));

courses.js

실질적인 로직을 구현하는 코드는 여기서 진행하면 된다.

exports.courseUserChange = (event, admin) => {
  // 실질적인 로직을 구현하는 코드
}

0개의 의견 from SLiPP

의견 추가하기

연관태그

← 목록으로