Javascript React redux@connect不起作用,但connect()起作用

Javascript React redux@connect不起作用,但connect()起作用,javascript,reactjs,react-native,redux,react-redux,Javascript,Reactjs,React Native,Redux,React Redux,我无法使用@connect()语法代替导出默认连接() 我注意到当我使用通常的语法时 class PhonePage extends Component { ... } export default connect(state => ({ testedByPhone: state.phonepage.testedByPhone }), (dispatch) => ({ actions: bindActionCreators(testU

我无法使用
@connect()
语法代替
导出默认连接()

我注意到当我使用通常的语法时

class PhonePage extends Component { ... }

export default connect(state => ({
        testedByPhone: state.phonepage.testedByPhone
    }),
    (dispatch) => ({
        actions: bindActionCreators(testUserPhone, dispatch)
    })
)(PhonePage)
我在我的商店中正确注册了我的状态

它看起来是这样的:
Object{screenProps:undefined,navigation:Object,testedByPhone:Object}

但是,当我使用@connect decorator使事情变得更干净时,我的状态中没有列出任何内容

@connect(
    state => ({
        testedByPhone: state.phonepage.testedByPhone
    }), 
    { testUserPhone }
)
class PhonePage extends Component { ... }

export default PhonePage
突然之间,它不知何故实际上并没有把事情联系起来:
Object{screenProps:undefined,navigation:Object}

我做错了什么,使用我看到大家都在使用的神奇@connect装饰器的正确方法是什么?


代码的其余部分,以防万一,以@connect的形式出现

“严格使用”
从“React”导入React,{Component}
进口{
评估学,
样式表,
文本
滚动视图,
看法
状态栏,
触控高光,
按钮
文本输入框
}从“反应本机”
从“反应导航”导入{NavigationActions}
从“redux”导入{bindActionCreators}
从“react redux”导入{connect}
从“./actions”导入{testUserPhone}
从“react native phone input”导入PhoneInput
@连接(
状态=>({
testedByPhone:state.phonepage.testedByPhone
}), 
{testUserPhone}
)
类PhonePage扩展组件{
构造函数(){
超级()
}
componentDidMount(){
//this.props.testUserPhone
}
render(){
console.log(this.props)
返回(
...
)
}
}
导出默认电话页
//导出默认连接(状态=>({
//testedByPhone:state.phonepage.testedByPhone
//     }),
//(调度)=>({
//操作:bindActionCreators(testUserPhone、dispatch)
//     })
//)(电话页)

//module.exports=PhonePage
这个
@connect
装饰程序,或者说一般的装饰程序,不是JavaScript固有的。但是,您可以通过巴别塔添加它们

你可以阅读更多关于它的内容


对于babel-6,请遵循@megaboy101的答案

对于babel-7,请使用此

{
“插件”:[
[“@babel/plugin提案装饰器”,{“legacy:true}],
]
}

您是否正确转换了装饰器?我们能看看你的建造步骤吗?@ZekeDroid我不知道你说的“改造”它们是什么意思?构建步骤?如果你告诉我如何为你获取这些信息,我会的。@AndrewLi根据本教程,你似乎不需要作为参数发送,这是@ZekeDroid Wait的唯一原因,你是说我的babelrc文件吗?它只有{presets:[“react native”],“plugins”:[“syntax decorators”]}@AndrewLi我认为decorator语法已经默认包含了分派,通过传递您的操作,它会自动链接起来——至少对视频中的人来说是这样——我将我的作为插件添加到Babel中——仍然没有帮助:(@ARMATAV您使用了哪个插件?“语法装饰器”我应该使用哪个?@ARMATAV尝试babel插件转换装饰器
npm install --save-dev babel-plugin-transform-decorators-legacy