如何在电子中显示 json 中的单个值

how to display a single value from json in electron

我有一个 Electron 应用程序,我在其中执行本地脚本并返回 json 输出。我可以显示所有 json 但我无法显示单个值。

HTML

中的脚本
<script type="text/javascript">
const { exec } = require("child_process");

const test = exec("cd /home/user/Desktop/Wallet && ./wallet --format json balance", (error, stdout, stderr) => {

    if (error) {
        console.log(`error: ${error.message}`);
        return;
    }
    if (stderr) {
        console.log(`stderr: ${stderr}`);
        return;
    }
   const test = (`data: ${stdout}`);

   console.log(test);

});
</script>

在控制台日志中,我打印了这个

data: [
  {
    "address": "134JGdUZauF3c8zxF9yzipGdojv6XGSmW5exCDiQM1wWJfGXXXY",
    "balance": 0.1,
    "dc_balance": 0,
    "sec_balance": 0.0
  }
]

但我无法打印 balanceaddress,无论我做什么总是 undefined.

stdout arg 包含子进程生成的输出(json 字符串)。它只是一个字符串。您需要解析 json 输出以获取数据:

try
{
  const data = JSON.parse( stdout )
  console.log( `Adress:${data[ 0 ].address}` )
}
catch( err )
{
  throw Error( "Failed to parse json output.Reason:\n" + err )
}