reactJS - 函数内部映射上的意外标记

reactJS - Unexpected token upon map inside a function

每当我映射到函数内部以调用数组中的数据时,我都会遇到错误。你可以在下面看到我的代码。

onAddOrder = () => {
      var newOrders = this.state.orders;
      newOrders.push({
        parts: [],
        prints: {_.map(this.state.selectedOrder.prints, (print) => {
            return {
              name: {print.printMethod},
              width: {print.width},
              height: {print.height},
              colors: {print.colors}
            };
          })},
        breakdown: [{
          size: '',
          quantity: 0
        }]
      });

      this.setState({ 
        orders: newOrders 
      });
    }

这是我遇到的错误

Module build failed: SyntaxError: /Users/dczii/Projects/dashboard/src/components/OrderForm/OrderForm.js: Unexpected token (156:18) <br />
  154 |         },<br />
  155 |         parts: [], 
> 156 |         prints: {_.map(this.state.selectedOrder.prints, (print) => {
      |                   ^
  157 |             return {
  158 |               name: {print.printMethod},
  159 |               width: {print.width},

如果 prints 是一个函数,那么您只是缺少一些语法:

prints: () => {_.map(this.state.selectedOrder.prints, (print) => {
            return {
              name: {print.printMethod},
              width: {print.width},
              height: {print.height},
              colors: {print.colors}
            };
          })},

目前,看起来 prints 是一个对象,显然点在对象文字的键端无效 ({_.)

你可能对 JSX 表达式块感到困惑 {}。它用在 JSX 标签之间(比如 <a>{someExpression}</a>),如果你有意的话,你不必在普通的 JavaScript 中使用它。

我刚刚删除了大括号并看到它有效:

http://goo.gl/muvzGX