【发布时间】:2013-01-06 08:37:25
【问题描述】:
这是我想看到的:
kango.invokeAsync('kango.storage.getItem', 'item1', function(returned1) {
kango.invokeAsync('kango.storage.getItem', 'item2', function(returned2) {
alert(returned1 + returned2);
});
});
这是我在coffeescript中写的:
kango.invokeAsync 'kango.storage.getItem', 'item1', (returned1) ->
kango.invokeAsync 'kango.storage.getItem', 'item2', (returned2) ->
alert returned1 + returned2
这里的问题是无论如何,coffeescript 都在让函数 ()-> 返回一些东西。在这种情况下,由于某种原因,最后一条语句被返回。
如果我要在嵌套函数中使用return2 放置第二个警报,它将返回而不是第一个:
kango.invokeAsync('kango.storage.getItem', 'item1', function(returned1) {
kango.invokeAsync('kango.storage.getItem', 'item2', function(returned2) {
alert(returned1 + returned2);
return alert('something');
});
如何让它避免退货?
【问题讨论】:
-
嗯,我编译了它并得到了你所期望的。你确定缩进和你说的一样吗?
-
多么奇怪。它似乎只发生在小提琴沙拉上:fiddlesalad.com/coffeescript/asdfasdf-asf-asf
-
我稍微更新了问题。
-
在 jsbin 中也符合我的要求。 jsbin.com/ayejal/1/edit
-
出于兴趣,你为什么关心?
标签: javascript jquery coffeescript