Javascript 节点js express hbs中的Registerhelper

Javascript 节点js express hbs中的Registerhelper,javascript,node.js,handlebars.js,Javascript,Node.js,Handlebars.js,我想在node js express把手中添加两个数字。所以我发现我可以像这样注册助手 hbs.registerHelper('addTwoNum', function(num1, num2) { return num1+num2; }); 但是我不知道hbs在哪里注册这个助手。 注意,我使用的是NodeJSExpress 当我尝试这种方法时 app.engine('hbs', handlebars({ defaultLayout: 'mainlayout', helpers: {

我想在node js express把手中添加两个数字。所以我发现我可以像这样注册助手

hbs.registerHelper('addTwoNum', function(num1, num2) {
  return num1+num2;
});
但是我不知道hbs在哪里注册这个助手。 注意,我使用的是NodeJSExpress

当我尝试这种方法时

app.engine('hbs', handlebars({
  defaultLayout: 'mainlayout',
  helpers: {
      getTotal: function (num1, num2){
          
          return num1+num2;
      }   
  }
}));
它显示了错误

app.engine('hbs', handlebars({
              ^

TypeError: handlebars is not a function
    at Object.<anonymous> (/home/adhil/mamans-store/app.js:27:19)
    at Module._compile (internal/modules/cjs/loader.js:778:30)
    at Object.Module._extensions..js (internal/modules/cjs/loader.js:789:10)
    at Module.load (internal/modules/cjs/loader.js:653:32)
    at tryModuleLoad (internal/modules/cjs/loader.js:593:12)
    at Function.Module._load (internal/modules/cjs/loader.js:585:3)
    at Module.require (internal/modules/cjs/loader.js:692:17)
    at require (internal/modules/cjs/helpers.js:25:18)
    at Object.<anonymous> (/home/adhil/mamans-store/bin/www:7:11)
    at Module._compile (internal/modules/cjs/loader.js:778:30)
    at Object.Module._extensions..js (internal/modules/cjs/loader.js:789:10)
    at Module.load (internal/modules/cjs/loader.js:653:32)
    at tryModuleLoad (internal/modules/cjs/loader.js:593:12)
    at Function.Module._load (internal/modules/cjs/loader.js:585:3)
    at Function.Module.runMain (internal/modules/cjs/loader.js:831:12)
    at startup (internal/bootstrap/node.js:283:19)
    at bootstrapNodeJSCore (internal/bootstrap/node.js:623:3)
app.engine('hbs',把手({
^
类型错误:车把不是一个功能
在对象上。(/home/adhil/mamans store/app.js:27:19)
at模块编译(内部/modules/cjs/loader.js:778:30)
at Object.Module._extensions..js(internal/modules/cjs/loader.js:789:10)
at Module.load(内部/modules/cjs/loader.js:653:32)
在tryModuleLoad(内部/modules/cjs/loader.js:593:12)
at Function.Module._load(内部/modules/cjs/loader.js:585:3)
at Module.require(内部/modules/cjs/loader.js:692:17)
根据需要(内部/modules/cjs/helpers.js:25:18)
在物体上。(/home/adhil/mamans store/bin/www:7:11)
at模块编译(内部/modules/cjs/loader.js:778:30)
at Object.Module._extensions..js(internal/modules/cjs/loader.js:789:10)
at Module.load(内部/modules/cjs/loader.js:653:32)
在tryModuleLoad(内部/modules/cjs/loader.js:593:12)
at Function.Module._load(内部/modules/cjs/loader.js:585:3)
位于Function.Module.runMain(internal/modules/cjs/loader.js:831:12)
启动时(内部/bootstrap/node.js:283:19)
在bootstrapNodeJSCore(internal/bootstrap/node.js:623:3)
var express=require('express');
var exphbs=require('express-handlebar');
var-app=express();
发动机附件(“把手”,exphbs());
应用程序集(“查看引擎”、“把手”);
如果你得到这个错误

Error: Failed to lookup view "error" in views directory "/home/adhil/mamans-store/views"
    at Function.render (/home/adhil/mamans-store/node_modules/express/lib/application.js:580:17)
    at ServerResponse.render (/home/adhil/mamans-store/node_modules/express/lib/response.js:1008:7)
    at /home/adhil/mamans-store/app.js:80:7
    at Layer.handle_error (/home/adhil/mamans-store/node_modules/express/lib/router/layer.js:71:5)
    at trim_prefix (/home/adhil/mamans-store/node_modules/express/lib/router/index.js:315:13)
    at /home/adhil/mamans-store/node_modules/express/lib/router/index.js:284:7
    at Function.process_params (/home/adhil/mamans-store/node_modules/express/lib/router/index.js:335:12)
    at next (/home/adhil/mamans-store/node_modules/express/lib/router/index.js:275:10)
    at Layer.handle_error (/home/adhil/mamans-store/node_modules/express/lib/router/layer.js:67:12)
    at trim_prefix (/home/adhil/mamans-store/node_modules/express/lib/router/index.js:315:13)
    at /home/adhil/mamans-store/node_modules/express/lib/router/index.js:284:7
    at Function.process_params (/home/adhil/mamans-store/node_modules/express/lib/router/index.js:335:12)
    at next (/home/adhil/mamans-store/node_modules/express/lib/router/index.js:275:10)
    at /home/adhil/mamans-store/node_modules/express/lib/router/index.js:635:15
    at IncomingMessage.next (/home/adhil/mamans-store/node_modules/express/lib/router/index.js:260:14)
    at done (/home/adhil/mamans-store/node_modules/express/lib/response.js:1003:25)
    at Function.render (/home/adhil/mamans-store/node_modules/express/lib/application.js:582:14)
    at ServerResponse.render (/home/adhil/mamans-store/node_modules/express/lib/response.js:1008:7)
    at PRODUCT_HELPER.getCategorisedProducts (/home/adhil/mamans-store/routes/user.js:17:17)
    at Object.getCategorisedProducts (/home/adhil/mamans-store/helpers/PRODUCT_HELPER.js:247:9)
    at PRODUCT_HELPER.getAllCarouselItems (/home/adhil/mamans-store/routes/user.js:16:24)
    at Object.getAllCarouselItems (/home/adhil/mamans-store/helpers/PRODUCT_HELPER.js:219:9)
将“error.hbs”文件重命名为“error.handlebar”

这意味着您必须将所有“example.hbs”文件重命名为“example.handlebar”