小编Guy*_*ark的帖子

在 NodeJS 中等待异步方法

我到处寻找,只能找到如何编写异步函数,我已经理解了。

我想做的是在触发事件 [EventEmitter] 中运行异步方法,但我发现这样一个简单的事情似乎根本不可能。

考虑以下...

// Your basic async method..
function doSomething(callback) {
    var obj = { title: 'hello' };

    // Fire an event for event handlers to alter the object.
    // EvenEmitters are called synchronously
    eventobj.emit('alter_object', obj);

    callback(null, obj);
}

// when this event is fired, I want to manipulate the data
eventobj.on('alter_object', function(obj) {
    obj.title += " world!";

    // Calling this async function here means that our
    // event handler will return before our data is retrieved.
    somemodule.asyncFunction(callback(err, …
Run Code Online (Sandbox Code Playgroud)

javascript asynchronous node.js eventemitter

5
推荐指数
1
解决办法
3408
查看次数

如果语句在组合枚举值上没有按预期工作

这是一个古怪的.

我有以下代码......

foreach (IScanTicket ticket in this) {
    if (ticket.Status == TicketStatus.Created || ticket.Status == (TicketStatus.Transfered | TicketStatus.Created))
        return ticket;
    }
}
Run Code Online (Sandbox Code Playgroud)

当我运行这个状态时Created|Transferred,if语句似乎失败了(没有按照它的意思去做).

有趣的是,如果我调试并逐步执行代码并观察语句,它总是TRUE在我的调试器中返回,但是当我单步执行代码时它无法进入块.

为什么调试器会显示该语句true,但仍然继续这样做?这就像调试器告诉我的一样.

有没有人经历过这个?

PS我正在使用Xamarin studio 5.9.7

.net c# debugging if-statement

5
推荐指数
1
解决办法
174
查看次数

带有安静选项的 apt-get 仍然很吵

尝试在脚本中使用 apt-get,所以我正在使用该apt-get -qq -y选项,因为我想让我的安装脚本显示类似...

Installing SUDO....DONE
Run Code Online (Sandbox Code Playgroud)

但是由于某种原因 apt-get 仍然产生大量输出,使用这个选项,这意味着我最终会得到......

Installing SUDO....
Selecting previously unselected package sudo.
(Reading database ... 48056 files and directories currently installed.)
Preparing to unpack .../sudo_1.8.10p3-1+deb8u5_amd64.deb ...
Unpacking sudo (1.8.10p3-1+deb8u5) ...
Processing triggers for man-db (2.7.0.2-5) ...
Processing triggers for systemd (215-17+deb8u5) ...
Setting up sudo (1.8.10p3-1+deb8u5) ...
DONE
Run Code Online (Sandbox Code Playgroud)

所以我的安装脚本对于基本包安装来说看起来很混乱,更不用说所有其他包了。

我错过了什么吗?

bash apt-get

5
推荐指数
1
解决办法
3446
查看次数

在 PL/PgSQL 中将返回的 SETOF 转换为数组(具体而言)

我知道有 的过程SELECT array_agg(f) FROM (SELECT blah FROM stuff) f,这在 SQL 中很棒,但是在 PL/pgSQL 中编写函数时,有没有简写方法?

我正在尝试将 JSON 键放入一个数组中,我可以用它来查看长度。就像是...

v_len := array_length( array_agg(json_object_keys(myjson)), 1);

而不是长, DECLARE a 变量,做 a SELECT array_agg(f) INTO ...,这是我一直在做的。我似乎已经使用相同的 SQL 字符串实现了数百种实现,但我真的很想减少我的代码,我的手指因所有多余的输入而变得麻木。

这种速记方法缺少什么?

postgresql plpgsql array-agg

1
推荐指数
1
解决办法
4706
查看次数