"unexpected '}', expecting =>" 使用属性时
"unexpected '}', expecting =>" while using attributes
我有一个 img
标签作为 html,我想在 erb 中使用它:
<img src="images/Slider/app.png" alt="" width="636" height="441" data-ww="['600px','500px','400px','200px']" data-hh="['338px','281px','225px','113px']" data-no-retina>
我的 html erb 代码是:
<%= image_tag "/Slider/app.png", width:"636", height:"441", data: { ww:['600px','500px','400px','200px'], hh:['338px','281px','225px','113px'], no-retina } %>
但我收到语法错误:unexpected '}', expecting =>
Rails 不允许 dash-case 作为散列键。因此在尝试解析 no-retina
.
时语法失败
如果你想用 dash-case 作为键,你应该使用横向字符串
<%= image_tag "/Slider/app.png", width:"636", height:"441", data: { ww:['600px','500px','400px','200px'], hh:['338px','281px','225px','113px'], 'no-retina': true } %>
在这种特殊情况下(image_tag 帮助程序和数据属性),但是,Rails 足够聪明,可以让您获得正确的 HTML 如果您只使用 uderscores:
<%= image_tag "/Slider/app.png", width:"636", height:"441", data: { ww:['600px','500px','400px','200px'], hh:['338px','281px','225px','113px'], no_retina: true } %>
此外,如果您查看 image_tag 文档,您会发现可以使用 size
指定高度和宽度。通过一些代码风格清理,这看起来好多了:
<%= image_tag "/Slider/app.png", size: "636x441", data: { ww: ['600px','500px','400px','200px'], hh: ['338px','281px','225px','113px'], no_retina: true } %>
你可以通过-
打破它并嵌套它
<%= image_tag "/Slider/app.png", data: { no: { retina: true } } %>
我有一个 img
标签作为 html,我想在 erb 中使用它:
<img src="images/Slider/app.png" alt="" width="636" height="441" data-ww="['600px','500px','400px','200px']" data-hh="['338px','281px','225px','113px']" data-no-retina>
我的 html erb 代码是:
<%= image_tag "/Slider/app.png", width:"636", height:"441", data: { ww:['600px','500px','400px','200px'], hh:['338px','281px','225px','113px'], no-retina } %>
但我收到语法错误:unexpected '}', expecting =>
Rails 不允许 dash-case 作为散列键。因此在尝试解析 no-retina
.
如果你想用 dash-case 作为键,你应该使用横向字符串
<%= image_tag "/Slider/app.png", width:"636", height:"441", data: { ww:['600px','500px','400px','200px'], hh:['338px','281px','225px','113px'], 'no-retina': true } %>
在这种特殊情况下(image_tag 帮助程序和数据属性),但是,Rails 足够聪明,可以让您获得正确的 HTML 如果您只使用 uderscores:
<%= image_tag "/Slider/app.png", width:"636", height:"441", data: { ww:['600px','500px','400px','200px'], hh:['338px','281px','225px','113px'], no_retina: true } %>
此外,如果您查看 image_tag 文档,您会发现可以使用 size
指定高度和宽度。通过一些代码风格清理,这看起来好多了:
<%= image_tag "/Slider/app.png", size: "636x441", data: { ww: ['600px','500px','400px','200px'], hh: ['338px','281px','225px','113px'], no_retina: true } %>
你可以通过-
打破它并嵌套它
<%= image_tag "/Slider/app.png", data: { no: { retina: true } } %>