0

我正在尝试打印 React 组件中的命令行参数。

NPM 文档说我可以使用..

console.log(process.argv);

但是,这不会打印任何内容。

Array(0)

以上是它在控制台中打印的内容。我正在用...调用我的程序

npm start

其中 start 是 npm electron 。好的

yargs 可以在反应组件中打印命令行参数吗?我应该尝试使用 yargs 吗?我找不到任何关于如何通过反应来做到这一点的文档。我知道电子只能在 main.js 中打印出来,远程进程在反应组件中不起作用。

4

2 回答 2

0

React 是客户端,对吧?虽然console.log()是服务器端......所以console.log()不会在您的反应内容中加入任何内容(除非您重写它)。

Electron确实使您可以访问节点执行上下文(因此您可以说var path = require("path")并可以访问路径活动)。

因此,您可能可以将 yargs 输出作为页面级变量访问。否则,您可以构建一个可以 require() 的模块。

另一种方法是让反应发出请求以获取 yargs 输出并像对待任何其他数据一样对待它。

我敢肯定还有其他解决方案。

我有一些示例代码做类似的事情,但在这里使用 Angular:https ://github.com/Earl-Brown/N-Dash

于 2017-10-05T22:32:56.703 回答
0

首先你需要运行命令行

npm start -- test

测试是您的建议。然后你可以在你的脚本中打印它

// print process.argv
process.argv.forEach(function (val, index, array) {
  console.log(index + ': ' + val);
});
于 2021-11-19T04:24:07.090 回答