请问有谁能描述一下在雇员再就业表文件中使用的下列字符的用法:
<% %>
<%= %>
<% -%>
<%# %>
每一种的用途是什么?
请问有谁能描述一下在雇员再就业表文件中使用的下列字符的用法:
<% %>
<%= %>
<% -%>
<%# %>
每一种的用途是什么?
当前回答
<% %>和<%-和-%>适用于任何Ruby代码,但不输出结果(例如if语句)。这两个是一样的。
<%= %>用于输出Ruby代码的结果
<%# %>是ERB注释
这里有一个很好的指南: http://api.rubyonrails.org/classes/ActionView/Base.html
其他回答
我添加了<%%文字标记分隔符作为答案,因为它是模糊的。这将告诉erb不要解释标签的<%部分,这对于js应用程序(如显示chart.js工具提示等)是必要的。
更新(修复断开链接)
有关雇员再培训局的资料,可在此查阅: https://puppet.com/docs/puppet/5.3/lang_template_erb.html#tags
<% %>
执行括号内的ruby代码。
<%= %>
将内容打印到erb文件中。
<%== %>
相当于<%= raw %>。逐字打印(即w/o转义)到erb文件。(摘自Ruby on Rails指南)
<% -%>
避免在表达式后换行。
<%# %>
注释掉括号内的代码;不发送到客户端(相对于HTML注释)。
访问Ruby Doc了解更多关于雇员再培训局的信息。
<% %>和<%-和-%>适用于任何Ruby代码,但不输出结果(例如if语句)。这两个是一样的。
<%= %>用于输出Ruby代码的结果
<%# %>是ERB注释
这里有一个很好的指南: http://api.rubyonrails.org/classes/ActionView/Base.html
这些在ruby on rails中使用:-
<% %>:-
<% %>标记用于执行不返回任何内容的Ruby代码,例如条件、循环或块。如:-
<h1>Names of all the people</h1>
<% @people.each do |person| %>
Name: <%= person.name %><br>
<% end %>
<%= %>:-
用于显示内容。
Name: <%= person.name %><br>
< %—% >:-
Rails扩展了ERB,因此只需在Rails模板中的标记后面添加一个连字符,就可以删除换行符
< % # % >: -
注释掉代码
<%# WRONG %>
Hi, Mr. <% puts "Frodo" %>
<% %>执行其中的代码,但不打印结果,例如: 我们可以将它用于erb文件中的if else。
<% temp = 1 %>
<% if temp == 1%>
temp is 1
<% else %>
temp is not 1
<%end%>
打印temp是否为1
<%= %>执行代码并打印输出,例如: 我们可以打印一个rails变量的值。
<% temp = 1 %>
<%= temp %>
将打印1
<% -%>没有区别,因为它不打印任何东西,-%>只适用于<%= -%>,这将避免新行。
<%# %>将注释掉在此代码中编写的代码。