Javascript 未能在jsx中使用时间来格式化日期 上次更新:{时刻({obj.updated_at}).format('DD-MMM-YYY')}

Javascript 未能在jsx中使用时间来格式化日期 上次更新:{时刻({obj.updated_at}).format('DD-MMM-YYY')},javascript,reactjs,ecmascript-6,Javascript,Reactjs,Ecmascript 6,我期待此输出:2017年3月30日,但我收到了意外的令牌错误错误?请将您的代码更改为- <p> Last update: {moment({obj.updated_at}).format('DD MMM YYY')}</p> 上次更新:{moment(obj.updated_at).format('DD-MMM-YYY')} 原始代码有什么问题? 在JSX中,语法被转换为React.createElement调用,其中{}块中的代码被转换为调用的参数。嵌套的{}块在这

我期待此输出:2017年3月30日,但我收到了意外的令牌错误错误?

请将您的代码更改为-

<p> Last update: {moment({obj.updated_at}).format('DD MMM YYY')}</p>
上次更新:{moment(obj.updated_at).format('DD-MMM-YYY')}

原始代码有什么问题?

在JSX中,

语法被转换为
React.createElement
调用,其中
{}
块中的代码被转换为调用的参数。嵌套的
{}
块在这种情况下无效,因为它无法转换为有效的参数值链。JSX标记中只需要一级
{}


您可以很容易地在上进行测试。

为什么
{obj.updated_at}
周围的括号?这对于es5或es6是无效的javascript语法:
{obj.updated_at}
<p> Last update: {moment(obj.updated_at).format('DD MMM YYY')}</p>