Ben triggers
adlı bir klasörde sağlayıcı ve kaynak tarafından benim olay işleyicileri düzenlemektedir. Örneğin. Burada auth
sağlayıcısı ve user
kaynağıdır; functions/triggers/auth/user
klasörü, sırasıyla bir kullanıcıyı memnuniyetle karşılayan ve temizleyen bir onCreate.js
ve onDelete.js
içerir.
+--/auth
| +--/user
| +--/onCreate.js
| +--/onDelete.js
+--/database
+--/storage
Sen require
işlevini kullanarak belirli bir tetikleyici verebilirsiniz:
exports.onCreateAuthUser = require('./triggers/auth/user/onCreate');
exports.onDeleteAuthUser = require('./triggers/auth/user/onDelete');
Ben bir adım daha ileri gitti ve benim için otomatik işlevleri verir bir komut dosyası oluşturdu. Dosyaların uzantısını f.js
olarak değiştiririm ve tetikleyici dizinini yinelemeli olarak ararım. Bulunan her dosya için, dizin ve dosya yolunu ayırarak işlev adı çağrılır.
Bu yapı, firebase-functions
npm paketinin iç yapısını denetleyerek esinlenmiştir.
Bu bir fikir konusudur ve Stack Overflow için uygun değildir. Ancak, diğer dosyalardan index.js'ye kod yazmak için require() işlevini kullanabileceğinizi bilmelisiniz. Bundan sonra, organizasyon ne istersen. –
Teşekkür ederim @DougStevenson, bu soruma cevap ver. –
Örneğim buraya bakın: http://stackoverflow.com/questions/42726310/how-to-test-firebase-functions-locally-on-pc/42729988#42729988 Bu, Bulut İşlevlerinin biraz eski bir sürümünden geliyor, ancak kavramlar hala aynı çalışıyor. –