小编J.R*_*.R.的帖子

如何从 javascript 中的 child_process.exec 获取返回值?

我尝试了以下代码,它显示 res 未定义。我怎样才能返回标准输出?

function run_shell_command(command)
{
    var res
    exec(command, function(err,stdout,stderr){
     if(err) {
        console.log('shell error:'+stderr);
    } else {
        console.log('shell successful');
    }
    res = stdout
    // console.log(stdout)
    });
    return res
} 
Run Code Online (Sandbox Code Playgroud)

javascript node.js

8
推荐指数
2
解决办法
7629
查看次数

sinon存根不替换功能.

我尝试了一个虚拟模块并将其存根,但不起作用.

app.js

function foo()
{
    return run_func()
}
function run_func()
{
    return '1'
}
exports._test = {foo: foo, run_func: run_func}
Run Code Online (Sandbox Code Playgroud)

test.js

app = require("./app.js")._test
describe('test', function(){
    it('test', function(){

        var test_stub = sinon.stub(app, 'run_func').callsFake(
          function(){
            return '0'
        })
        test_stub.restore()

        var res = app.foo()
        assert.equal('0', res)
    })
})
Run Code Online (Sandbox Code Playgroud)

我尝试了以下建议: sinon stub不替换功能

但仍然是一样的.它不会取代功能.

javascript testing mocha.js node.js sinon

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

我可以在 Node.js 中捕获控制台输出吗?

我一开始试图杀死一个进程,我执行了

exec  = require('child_process').exec;
exec('kill xxx', function(error, stdout, stderr) {
    if (error) {
        console.log('exec error: ', error);
    }else{
       console.log(stdout)
    }
});
Run Code Online (Sandbox Code Playgroud)

我注意到 kill 程序可能启动了一个子进程,其输出无法在此处作为 stdout 捕获。

那么我通常可以捕获这些似乎与代码不太相关的控制台输出吗?

javascript kill node.js

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

让 Visual Studio 使用不同的次要版本工具集?

在 下"C:\Program Files (x86)\Microsoft Visual Studio\2019\Professional\VC\Tools\MSVC",我有不同的目录,例如:

  • 14.16.xxxxx
  • 14.24.xxxxx
  • 14.25.xxxx。

但是,我注意到 Visual Studio 始终使用最新的次要版本。

我可以将其设置为使用旧的次要版本的工具集吗?

c c++ visual-studio visual-studio-2019

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

我如何设计这个数据库,以便表中sql中的Null块较少?

我正在使用sqlite,所以空间对我来说是一个问题.我想要一张表来存储一些城市的历史温度数据.表就像

city_name      2018_04_04  2018_04_03  2018_04_02 ......   
Run Code Online (Sandbox Code Playgroud)

但问题是这些历史温度记录的范围对于不同的城市是不同的.例如,对于纽约,温度记录从公元1800年开始,伦敦的温度记录从公元1600年开始.因此,如果我构建一个列,其列以1600 AD开始,那么将会有大量空间填充Null.据我所知,如果数据是浮点数,Null也会占用空间.

我应该如何构建这个表,以便它"更智能"并填充更多有用的数据?或者至少"强制"Null不占用任何空间?

sql sqlite

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