Javascript Babel不使用ES2015传输,但使用Stage0预设

Javascript Babel不使用ES2015传输,但使用Stage0预设,javascript,babeljs,Javascript,Babeljs,我在使用babel和ES2015预设传输以下代码redux reducer时遇到问题。我错误地认为这是可以传输的代码 const todos = (state = [], action) => { switch (action.type) { case 'TOGGLE_TODO': return state.map(todo => (todo.id === action.id) ? {

我在使用babel和ES2015预设传输以下代码redux reducer时遇到问题。我错误地认为这是可以传输的代码

const todos = (state = [], action) => {
    switch (action.type) {
        case 'TOGGLE_TODO':
        return state.map(todo =>
            (todo.id === action.id)
                ? {
                ...todo,
                completed: !todo.completed
                }
                : todo
            )

        default:
        return state
    }
}

export default todos
错误消息

repl: Unexpected token (7:16)
   5 |             (todo.id === action.id)
   6 |                 ? {
>  7 |                 ...todo,

使用Stage0预设进行传输效果良好。我确实用计算机验证了这个行为

您正在使用作为第3阶段一部分的运算符。

因为preset-2016不支持对象静止排列。现在是第三阶段

谢谢你的回答。这确实是问题所在。我仍然想知道为什么我的同事能够用babel默认预设传输这个,我需要明确地设置这个。我认为他在开发中使用了它,但你正在尝试创建生产构建。这是真的吗?不,我们都使用6.26.0版本的babel src-out file index.js-source maps来传输所讨论的文件。我们这样做是为了在私有模块中在移动和web应用程序之间共享代码,因为在使用npm链接和符号链接时,web包设置存在问题。无论如何,再次感谢!