如何配置作为计算机使用的视图本地

时间:2018-06-29 11:10:43

标签: javascript node.js sails.js ejs

我是航行中的洛基,踢到动作2(作为机器的动作)。我被困在如何在操作2中配置视图本地人。 例如,在独立操作中,我可以配置和添加布局以按以下片段进行查看:

res.view('./pages/coffee/Boss/sell', { layout: 'layouts/layout-boss' })

我的问题是,如何用动作做与机器(action2)相同的事情?

exits: {
    success: {
      responseType: "view",
      viewTemplatePath: './pages/coffee/Boss/listDrink'
      //Here I want to configure locals of view
      //Specifically, I want to configure layout of the view
    },
    notFound: {
      description: 'The data of drinks are empty',
      respondType: 'notFound'
    }
},

2 个答案:

答案 0 :(得分:1)

看起来您可以在exits.success调用中设置任何特定的参数,例如模板中可能需要的布局或任何ejs局部变量:

fn: async function (inputs, exits) {

  return exits.success({layout: 'layouts/layout-boss', ejsLocalVariable: 'value'});

}

退出声明就是

exits: {
  success: {
    responseType: "view",
    viewTemplatePath: './pages/coffee/Boss/listDrink'
  },
  notFound: {
    description: 'The data of drinks are empty',
    respondType: 'notFound'
  }
},

答案 1 :(得分:0)

在SailsJS中,要将布局应用于action2对象中的模板,您可以执行以下操作:

  1. 像往常一样声明您的成功出口:
exits: {
  success: {
    responseType: 'view',
    viewTemplatePath: 'pages/hello',
  },
},
  1. 从方法返回时,将布局添加到要传递给模板的任何其他值。
return exits.success({name1:value1, name2:value2, layout: 'layouts/backoffice'});

据我所知,布局是另一种本地语言,这里对本地语言进行了解释: https://sailsjs.com/documentation/concepts/views/locals