我有一个使用 ruby-ejs gem 编译 js 模板的 rails 应用程序,然后我在我的主干视图中使用这些模板。
我想使用一些视图助手在我的模板中创建表单元素,例如选择标签。我在这里找到了一些 EmbeddedJS View Helpers ,但我不知道如何在我的模板中使用它们。
这可能吗?
我有一个使用 ruby-ejs gem 编译 js 模板的 rails 应用程序,然后我在我的主干视图中使用这些模板。
我想使用一些视图助手在我的模板中创建表单元素,例如选择标签。我在这里找到了一些 EmbeddedJS View Helpers ,但我不知道如何在我的模板中使用它们。
这可能吗?
事实证明这并不像我想象的那么难。
我在这里简单地包含了来自 EmbeddedJS 项目的 ejs.js 和 view.js 文件,并且我能够使用完整的命名空间来使用 select_tag 帮助程序。
<%= EJS.Helpers.prototype.select_tag('example', selected_value, choices) %>
可能有更好的方法来访问辅助方法。一旦我弄清楚了,我会发布更新。
如果您使用 express,我建议您使用我的 ejs 查看助手版本https://github.com/tanema/express-helpers
你可以像这样初始化它们
var helpers = require('express-helpers')(app);
然后在您的 ejs 视图中使用这样的选择标签
<%
var choices = [
{value: 1,text: 'First Choice' },
{value: 2,text: 'Second Choice'},
{value: 3,text: 'Third Choice'}
]
%>
<%= select_tag('mySelectElement', 2, choices) %>
创建:
< select id='mySelectElement' value='2' name='mySelectElement'>
< option value='1' >First Choice</option>
< option value='2' selected='selected'>Second Choice</option>
< option value='3'>Third Choice</option>
< /select>