Подводя итог вышеупомянутому сообщению от Cheers и hth. - Alf, убедитесь, что у вас есть main()
или WinMain()
, и g ++ должен поступать правильно.
Моя проблема заключалась в том, что main()
был определен внутри пространства имен случайно.
В объекте все ключи должны сопровождаться :
для передачи значения.
Измените
export const rootReducer = combineReducers({
posts: postReducers,
stationsReducer: stationsReducer,
trackCircuitReducer, trackCircuitReducer
});
на
export const rootReducer = combineReducers({
posts: postReducers,
stationsReducer: stationsReducer,
trackCircuitReducer: trackCircuitReducer
});
Проблема в том, что вы используете запятую вместо двух точек trackCircuitReducer, trackCircuitReducer
Используйте это:
trackCircuitReducer: trackCircuitReducer
blockquote >
Имея опечатку ,
вместо :
, вы используете сокращенные имена свойств .
Итак, ваш литерал объекта эквивалентен:
{
posts: postReducers,
stationsReducer: stationsReducer,
trackCircuitReducer: trackCircuitReducer,
trackCircuitReducer: trackCircuitReducer,
}
Из MDN :
Строгий режим до Gecko 34 требует, чтобы все свойства с именем в буквальном объекте быть уникальным. Обычный код может дублировать имена свойств, причем последний определяет значение свойства. Но поскольку только последний ничего не делает, дублирование - это просто вектор ошибок, если код изменяется для изменения значения свойства, отличного от изменения последнего экземпляра. Двойные имена свойств являются синтаксической ошибкой в строгом режиме.
blockquote>(Примечание: это больше не относится к ECMAScript 2015 )
Вы можете упростить свой литерал до:
export const rootReducer = combineReducers({ posts: postReducers, stationsReducer, trackCircuitReducer })