node.js - 在 sails.js 中调用 Controller 的多重布局

标签 node.js sails.js

SAILS.JS

我在 Controller 中有两个 forder:admin 和 public。

我想编辑配置文件夹中的 view.js 文件。

  1. 如果 Controller 文件在管理文件夹中,它会调用布局:layout-admin

  2. 如果 Controller 文件在公共(public)文件夹中,它会调用布局:layout-public

    但我不知道该怎么做。

请大家支持我。非常感谢!

最佳答案

您可以做您想做的事,请查看此处的文档:http://sailsjs.org/documentation/reference/configuration/sails-config-views

布局属性只能是字符串 bool ,实际上没有办法用函数或整个 Controller 定义布局。

您可以向 sails 提出功能请求,以便在下一版本中看到此功能。

您可以在 Controller 中指定布局文件,如下所示:

myAction : function (req, res)
{
    var layout = "layout-public";
    if(req.session.authenticated)
    {
            layout = "layout-admin";
    }
    res.view("myview", {
        layout   : layout
    });
}

关于node.js - 在 sails.js 中调用 Controller 的多重布局,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/31166317/

相关文章:

sails.js - 如何在 Sails 的 Controller 中自定义创建

node.js - Node -gyp。 MSBuild.exe` 失败,退出代码 : 1

mysql - 使用 NodeJs 检查 MySQL 数据库中是否存在电子邮件

javascript - 如何使用小号将 href 属性抓取到数组中?

javascript - 如何使用 Sails.js 和 Waterline 更新 MongoDB 子文档中的特定键?

node.js - 使用 Sails.js,Dojo javascript 文件/路径不会立即显示在浏览器中

node.js 无法使用 http 进行 rest 调用

node.js - 尝试使用 npm 安装任何内容时出错

node.js - 即使添加响应 header 后,Sails.js 图像也不会缓存

mysql - Sails js - waterline orm - mysql。表自动生成