Dan*_*Dan 8 javascript coffeescript
我试图使用jQuery UI的选项卡示例中的这部分代码并将其转换为Coffeescript.我通过令人敬畏的http://js2coffee.org/工具运行它.
var tabTitle = $( "#tab_title" ),
tabContent = $( "#tab_content" ),
tabTemplate = "<li><a href='#{href}'>#{label}</a> <span class='ui-icon ui-icon-close'>Remove Tab</span></li>",
tabCounter = 2;
Run Code Online (Sandbox Code Playgroud)
问题是tabTemplate变量声明.据我所知,Coffeescript正在尝试对其进行字符串插值.我已经尝试用斜杠转义它,但这只是解决了在转换后的js中使用斜杠.
nic*_*ten 15
使用单引号来分隔您的字符串:http://coffeescript.org/#strings
如果要在字符串中使用单引号而不手动转义它们,可以使用3个单引号:
x = '''
my string's ok with single quotes and #{doesn't interpolate}
'''
Run Code Online (Sandbox Code Playgroud)
也就是说,这是HTML,因此双引号实际上比单引号更常见于属性.因此,您的字符串可以写成:
tabTemplate = '<li><a href="#{href}">#{label}</a> <span class="ui-icon ui-icon-close">Remove Tab</span></li>'
Run Code Online (Sandbox Code Playgroud)
没有任何问题.
使用反斜杠转义确实有效:
$ coffee -bce '"\#{a}"'
"\#{a}";
$ coffee -bce '"#\{a}"'
"#\{a}";
Run Code Online (Sandbox Code Playgroud)
| 归档时间: |
|
| 查看次数: |
13802 次 |
| 最近记录: |