Javascript 通过console.log()打印时显示React状态值,但不显示在网页上
我正在尝试使用React将Javascript 通过console.log()打印时显示React状态值,但不显示在网页上,javascript,reactjs,Javascript,Reactjs,我正在尝试使用React将props.usdGain中的美元数字输出到网页。让我大吃一惊的是这行console.log(“问题在于JSX解析器如何在花括号内编译数据。在后台,JSX需要的是单一计算或数据类型的表达式。为了更好地理解,请以下面的例子为例;当babel读取JSX代码以创建组件时,会使用以下JS代码: React.createElement(组件、道具等子项) 例如: 或者坦率地说: React.createElement( MyButton, {color: 'blue',
props.usdGain
中的美元数字输出到网页。让我大吃一惊的是这行console.log(“问题在于JSX解析器如何在花括号内编译数据。在后台,JSX需要的是单一计算或数据类型的表达式。为了更好地理解,请以下面的例子为例;当babel读取JSX代码以创建组件时,会使用以下JS代码:
React.createElement(组件、道具等子项)
例如:
或者坦率地说:
React.createElement(
MyButton,
{color: 'blue', shadowSize: 2},
'Click Me'
)
要对此进行分解,无法将用于接受子项的扩展运算符应用于表达式。有关详细信息,请参阅
当我试图用任何数据类型的多个对象(即:两个单独的字符串或两个变量)重现您的问题时对于我来说,它返回了undefined/failed(未定义/失败)。对于您来说,它之所以以静默方式失败,很可能是因为JSX将您的表达式作为两个值的串联读取,因此当它映射到DOM时,您只会看到undefined
至于您的解决方案我建议将{“净收益$”+props.usdGain}
分解为
{ `Net earnings $${ +props.usdGain }` }
字符串插值的胜利
让我知道这是否适合您作为一个公认的解决方案。事实上,您甚至可以创建对const foo=净收益$${+props.usdGain}
评估的引用,并调用{foo}在你的渲染中!谢谢你花时间!我把我的代码放在这里。仍然不起作用。流程是从App.js>earningChartList.js>earningChart.js开始的。你能给我举个例子说明什么是props.usdGain
输出吗?逻辑可能需要先用你的分子逻辑格式化。也许可以使用Number()