我试图了解何时将响应之类的东西注入函数,而不是调用函数并从中返回一些东西。在 Node.js 中就是这样。
Node.js 中的任何函数是否返回数据?还是只是关于注入参数和使用回调?
var sendHTMLToBrowser = require("../myCode/andrewsHelpers").sendHTMLToBrowser;
//var execExternalCommand = require("./childProcesses").execExternalCommand;
// import the exec function defined on the child_process module
var exec = require('child_process').exec;
function start(response, request) {
console.log("Request handler 'start' was called");
var body = '<!doctype html>'+
'<html lang="en">'+
'<head>'+
'<meta charset=UTF-8" />'+
'</head>'+
'<body>'+
'<p>Hello Andrew :)</p>'+
'</body>'+
'</html>';
sendHTMLToBrowser(response, body);
}
function linecount(response, request) {
console.log("Request handler 'linecount' was called.");
// launch the command "cat *.js | wc -l"
exec('cat *.js | wc -l', function(err, stdout, stderr) {
// the command exited or the launching failed
if (err) {
// we had an error launching the process
console.log('child process exited with error code', err.code);
return;
}
sendHTMLToBrowser(response, stdout.toString());
});
}
function executeCommand(command) {
return result;
}
exports.start = start;
exports.linecount = linecount;
所以我在一些代码中硬编码以在浏览器中显示行数。如果我想创建一个更通用的函数,将命令作为字符串并返回输出怎么办?我会再次将响应注入此函数还是可以返回结果?
一个命令是否会成为一个块是一个问题吗?例如,做一些基本的字符串操作可能会被实现为一个返回值的函数?
谢谢。