【发布时间】:2016-12-18 00:38:48
【问题描述】:
我已经制作了这段coffeescript代码,但在编译过程中出现错误
错误:'callback newResults' 附近的不匹配 OUTDENT
$('#ticket_message_content').textcomplete([{
match: /\B:([\-+\w]*)$/,
search: (term, callback) ->
results = []
results2 = []
results3 = []
$.each(emojiStrategy, (shortname, data) ->
if shortname.indexOf(term) > -1
results.push(shortname)
else
if data.aliases isnt null && data.aliases.indexOf(term) > -1
results2.push(shortname)
else if data.keywords isnt null && data.keywords.indexOf(term) > -1
results3.push(shortname)
if term.length >= 3
results.sort((a, b) ->
return (a.length > b.length))
results2.sort((a, b) ->
return (a.length > b.length))
results3.sort()
newResults = results.concat(results2).concat(results3)
callback newResults
template: (shortname) ->
return '<img class="emojione" src="//cdn.jsdelivr.net/emojione/assets/png/' + emojiStrategy[shortname].unicode + '.png"> :' + shortname + ':'
replace: (shortname) ->
return ':' + shortname + ': '
index: 1,
maxCount: 10
}], {
footer: '<a href="http://www.emoji.codes" target="_blank">Browse All<span class="arrow">»</span></a>'
})
我理解错误,但在语法/缩进中没有发现任何问题。
我的第一个想法是search 函数后面没有逗号,但是当我删除所有search 函数内容时代码很好。
这就是我想要在咖啡脚本中做的事情
$('#ticket_message_content').textcomplete([{
match: /\B:([\-+\w]*)$/,
search: function(term, callback){},
template: function (shortname) {},
replace: function (shortname) {},
index: 1,
maxCount: 10
}]);
感谢您的帮助
【问题讨论】:
-
您是否可以混合和匹配制表符和空格?
-
不可见的不正确空格字符...?制表符而不是空格?零宽度空间?
-
第 8 行你没有右括号:
$.each(