繁体   English   中英

错误:ENOENT:没有这样的文件或目录,打开'D:\\ nodejs \\ loginnew \\ views \\ layouts \\ layout.handlebars我发现此错误

[英]Error: ENOENT: no such file or directory, open 'D:\nodejs\loginnew\views\layouts\layout.handlebars this error i found

我在views文件夹中有一个名为layout的文件夹,但是当我运行代码时出现错误。

错误:ENOENT:没有这样的文件或目录,请打开:\\ nodejs \\ loginnew \\ views \\ layouts \\ layout.handlebars'

var routes=require('./routes/index');
var users=require('./routes/users');

var app=express();

app.set('views',path.join(__dirname,'views'));
app.engine('handlebars',exphbs({defaultLayout:'layout'}));
app.set('view engine','handlebars');
app.use(bobyParser.json());
app.use(bobyParser.urlencoded({extended:false}));
app.use(cookieParser());

app.use(express.static(path.join(__dirname,'public')));
console.log(path.join(__dirname,'public'));

app.use(session({
    secret:'secret',
    saveUninitialized:true,
    resave:true,
}));

app.use(passport.initialize());
app.use(passport.session());

app.use(expressValidator({
    errorFormatter:function(param,msg,value){
        var namespace =param.split('.')
        ,root=namespace.shift()
        ,formParam=root;
        while(namespace.length){
            formParam+='['+namespace.shift()+']';
        }
        return{
            param : formParam,
            msg:msg,
            value:value
        };
    }
}));

app.use(flash());

app.use(function(req,res,next){
    res.locals.sussess_msg=req.flash('sucess_msg');
    res.locals.error_msg=req.flash('error_msg');
    res.locals.error=req.flash('error');
    next();
});

app.use('/',routes);
app.use('/users',users);

app.set('port', process.env.PORT || 3000);
app.listen(app.get('port'),function(){
    console.log('server start on port '+app.get('port'));
});

看到这里是我的文件夹:

在此处输入图片说明

如果您不使用任何布局,请尝试通过将defaultLayout和layoutDir设置为空白/空格来如下初始化引擎。

app.engine(
    'hbs',
    expressHbs({
        extname: "hbs",
        defaultLayout: "",//"main-layout",
        layoutsDir: "",//"views/layouts/"
    })
  );

暂无
暂无

声明:本站的技术帖子网页,遵循CC BY-SA 4.0协议,如果您需要转载,请注明本站网址或者原文地址。任何问题请咨询:yoyou2525@163.com.

 
粤ICP备18138465号  © 2020-2024 STACKOOM.COM