Node.js应用程序无法在Firebase的云函数中呈现hbs

Node.js应用程序无法在Firebase的云函数中呈现hbs,node.js,firebase,npm,google-cloud-functions,firebase-hosting,Node.js,Firebase,Npm,Google Cloud Functions,Firebase Hosting,我目前正在尝试为Firebase部署一个使用云功能和Firebase托管功能的网站。然而,在firebase中成功部署我的应用程序后,我目前遇到了一个奇怪的错误 当我在localhost中使用firebase-server--only函数进行测试时,该应用程序运行得非常好,托管 但是在部署之后,当我尝试访问我的托管url时。我在云函数日志中发现此错误: Error: Cannot find module 'hbs' at Function.Module._resolveFilename

我目前正在尝试为Firebase部署一个使用云功能和Firebase托管功能的网站。然而,在firebase中成功部署我的应用程序后,我目前遇到了一个奇怪的错误

当我在localhost中使用
firebase-server--only函数进行测试时,该应用程序运行得非常好,托管

但是在部署之后,当我尝试访问我的托管url时。我在云函数日志中发现此错误:

Error: Cannot find module 'hbs'
    at Function.Module._resolveFilename (module.js:469:15)
    at Function.Module._load (module.js:417:25)
    at Module.require (module.js:497:17)
    at require (internal/module.js:20:19)
    at new View (/user_code/node_modules/express/lib/view.js:79:30)
    at EventEmitter.render (/user_code/node_modules/express/lib/application.js:570:12)
    at ServerResponse.render (/user_code/node_modules/express/lib/response.js:971:7)
    at /user_code/routes/homepage.js:7:9
    at Layer.handle [as handle_request] (/user_code/node_modules/express/lib/router/layer.js:95:5)
    at next (/user_code/node_modules/express/lib/router/route.js:137:13)
这就是我在
函数文件夹中设置app.js的方法:

const functions = require('firebase-functions');
const path = require('path');
const express = require('express');
const handlebars = require('express-handlebars');
const homepage = require('./routes/homepage');

const app = express();

// view engine setup
app.set('views', path.join(__dirname, 'views'));
app.engine('handlebars', handlebars({defaultLayout: 'layout'}));
app.set('view engine', 'handlebars');

app.use('/',homepage);

exports.app = functions.https.onRequest(app);
这是我的
主页.js

const express = require('express');
const homepageRouter = express.Router();


/* GET Homepage. */
homepageRouter.get("/", function (req, res, next) {
    console.log('I was called');
    res.render('./homepage/homepage.hbs');
});


module.exports = homepageRouter;
这是我的文件夹结构:

现在,因为在错误日志中,它这样说:
at/user\u code/routes/homepage.js:7:9

我认为这行代码导致了这个问题:
res.render('./homepage/homepage.hbs')
homepage.js
中,但我无法找出问题所在,因为它在本地主机中进行测试时起作用


我想我错过了什么。如果您有任何建议,我们将不胜感激。

尝试使用此解决方案