Sails js布局视图更改文件夹
sails js layout view change folder
我的项目有多个布局,我想创建一个文件夹来包含这些布局并将它们从视图文件夹中拉出,但是当我这样做时,布局在我 运行应用程序。
我该如何解决这个问题?
提前Tx。
要解决这个问题,您有两种选择,具体取决于您是使用路由还是控制器来为您的视图提供服务。
首先,假设您的视图文件夹中有一个文件夹 "mylayouts",并且该文件夹包含许多布局,例如。 "layout_home.ejs"、"layout_admin.ejs"等
要将这些布局用于特定视图,您可以:
一个。在 config/routes.js 文件中使用 locals 设置布局,确保同时包含文件夹名称和布局文件名。例如
'/': {
view: 'homepage',
locals: {
layout: '/mylayouts/layout_home.ejs'
}
}
乙。在控制器的响应中设置布局,再次确保包含文件夹名称和布局文件名。例如
/**
* AdminController
*
* @description :: Server-side logic for managing admins
* @help :: See http://sailsjs.org/#!/documentation/concepts/Controllers
*/
module.exports = {
index : function(req, res){
res.view({
layout : '/mylayouts/layout_admin.ejs'
})
}
};
我的项目有多个布局,我想创建一个文件夹来包含这些布局并将它们从视图文件夹中拉出,但是当我这样做时,布局在我 运行应用程序。
我该如何解决这个问题?
提前Tx。
要解决这个问题,您有两种选择,具体取决于您是使用路由还是控制器来为您的视图提供服务。
首先,假设您的视图文件夹中有一个文件夹 "mylayouts",并且该文件夹包含许多布局,例如。 "layout_home.ejs"、"layout_admin.ejs"等
要将这些布局用于特定视图,您可以:
一个。在 config/routes.js 文件中使用 locals 设置布局,确保同时包含文件夹名称和布局文件名。例如
'/': {
view: 'homepage',
locals: {
layout: '/mylayouts/layout_home.ejs'
}
}
乙。在控制器的响应中设置布局,再次确保包含文件夹名称和布局文件名。例如
/**
* AdminController
*
* @description :: Server-side logic for managing admins
* @help :: See http://sailsjs.org/#!/documentation/concepts/Controllers
*/
module.exports = {
index : function(req, res){
res.view({
layout : '/mylayouts/layout_admin.ejs'
})
}
};