如何从 React 中的 Flux 调度程序获取对象数组?

How to fetch an object array from Flux dispatcher in React?

在我的前端,我 运行 React with Flux dispatchers。我也有 web-pack-dev 服务器 运行。

研究 "Unexpected Token" 个错误后,我不断得出这个解决方案:

但是,我的 webpack.config.js 文件中包含此预设,只有在 flux 的调度程序中包含数组时才会出现此错误。我在下面包含了我为测试而构建的功能。这在仅传递一个对象时完美运行,但在传递数组时会抛出错误。

Module build failed: SyntaxError: /Users/foo/sites/app/js/actions/TripActions.js: Unexpected token (33:6)
  31 |              country: "Spain",
  32 |              complete: false
> 33 |          },
     |           ^
  34 |          {
  35 |              id: 987655432,
  36 |              text: "Another Great Flat!",

我正在测试的功能

export function reloadTrip() {

    dispatcher.dispatch({type: "FETCH_TRIPS"});

    setTimeout(() => {


        dispatcher.dispatch({type: "RECIEVE_TRIPS", [
            {
                id: 123456789,
                text: "Nice flat for you and me",
                city: "Madrid",
                country: "Spain",
                complete: false
            },
            {
                id: 987655432,
                text: "Another Great Flat!",
                city: "Paris",
                country: "France",
                complete: true
            }
       ]});


    }, 1000);
}

您正在将一个对象传递给 dispatcher.dispatch,但该对象有一个 key/value ({type: 'RECEIVE_TRIPS'}) 和一个数组 ([{...}, {...}])。数组无效,对象需要 key/value.

通过:

{
    type: 'RECEIVE_TRIPS',
    trips: [{...}, {...}],
}

你应该做得更好。

要测试 Babel 是否按预期工作,请使用无错误(即:简单)脚本在命令行上尝试。