Javascript 在firebase云函数中拆分index.js文件时出错

Javascript 在firebase云函数中拆分index.js文件时出错,javascript,node.js,firebase,google-cloud-functions,Javascript,Node.js,Firebase,Google Cloud Functions,我试图将我的index.js文件拆分为多个文件。我想计算数据库引用中的子对象数。以前我的index.js文件是 exports.updateUserBookCount = functions.database.ref('/Users/{userID}/Books/{bookID}') .onWrite(async (change,context)=>{ const collectionRef = change.after.ref.parent;

我试图将我的index.js文件拆分为多个文件。我想计算数据库引用中的子对象数。以前我的index.js文件是

exports.updateUserBookCount = functions.database.ref('/Users/{userID}/Books/{bookID}')
      .onWrite(async (change,context)=>{

        const collectionRef = change.after.ref.parent;
        const userID = context.params.userID;
        const countRef = admin.database().ref(`/UserInfo/${userID}/usersBooks`);
        console.log("book counter : "+collectionRef);

        const bookList = await collectionRef.once('value');
        return await countRef.set(bookList.numChildren());

      });
我创建了一个新文件counter.js它是


//counter.js
exports.userBookCount = function(change,context,admin){
    const collectionRef = change.after.ref.parent;
    const userID = context.params.userID;
    const countRef = admin.database().ref(`/UserInfo/${userID}/usersBooks`);
    console.log("book counter : "+collectionRef);

    const bookList = await collectionRef.once('value');
    return await countRef.set(bookList.numChildren());
}
然后我改变了index.js

//index.js
const admin = require('firebase-admin');
admin.initializeApp();
const counter = require('./counter');
exports.updateUserBookCount = functions.database.ref('/Users/{userID}/Books/{bookID}')
      .onWrite(async (change,context)=>{
         counter.userBookCount(change,context,admin);
      });

但是我在counter.js 9:28错误解析错误:部署时意外的token collectionRef中遇到错误

我不清楚您的结构,但我猜您只是希望能够拆分文件以进行代码组织?如果是这样的话,我会这样构建它:

//index.js
const admin=require('firebase-admin')
const functions=require('firebase-functions')
admin.initializeApp()
const counter=require('./counter.js')
exports.updateUserBookCount=functions.database.ref('/Users/{userID}/Books/{bookID}').onWrite(计数器);
//counter.js
const admin=require('firebase-admin')
//此函数将成为index.js中的counter-您不会获得counter.userBookCount,因为您有一个来自此文件的导出
module.exports=(更改,上下文)=>{
//你剩下的逻辑
}
//如果您确实需要counter.userBookCount,因为此处还有其他函数,请导出多个函数,如下所示:
module.exports={
userBookCount:(更改,上下文)=>{
//你剩下的逻辑
},
someOtherBookFunction:(更改,上下文)=>{…}
}