从sails中的脚本块访问响应对象

时间:2015-03-06 14:51:08

标签: javascript sails.js ejs

我有一个风帆应用程序。在控制器中,页面的响应对象如下所示:

response.view(template, {
    data: result,
    actionType: "edit"
  });

在页面上,我包含了一个像这样的本地脚本

<% block('localScripts', '<script src="/js/myscript.js"></script>') %>

在这个脚本中,我希望有类似

的内容
if(actionType === "edit") {
   //send to edit endpoint
} else {
  //send to create endpoint
}

但是我无法访问actionType变量。有没有办法在脚本中访问此变量,除非将其存储在隐藏字段中? 我可以将变量传递给脚本,还是可以从脚本中访问响应对象?

任何暗示赞赏

1 个答案:

答案 0 :(得分:0)

这是如此奇怪的方式。为什么不根据控制器中的动作类型更改模板而不是分析模板中的某些内容?

我建议为您的变体提供简单的解决方案。 在插入脚本块之前的模板中执行:

<script type="application/javasript">var actionType = <%- actionType  %></script>