Javascript 装饰器功能不工作(意外标记)

Javascript 装饰器功能不工作(意外标记),javascript,decorator,ecmascript-next,Javascript,Decorator,Ecmascript Next,刚刚尝试在React中使用装饰器: import React from 'react'; import Fade from './Transitions/Fade' import withVisible from './withVisible' @withVisible() const App = props => <Fade visible={props.visible} duration={500}> Hello </Fade>

刚刚尝试在React中使用装饰器:

import React from 'react';
import Fade from './Transitions/Fade'
import withVisible from './withVisible'

@withVisible()
const App = props =>
    <Fade visible={props.visible} duration={500}>
        Hello
    </Fade>

export default App
从“React”导入React;
从“./Transitions/Fade”导入淡入淡出
从“/withVisible”导入withVisible
@withVisible()
const App=props=>
你好
导出默认应用程序
如果我使用公共方式(withVisible()(App)),那么它工作正常。 (我猜NodeJS无法用@编译我的代码)[语法错误:意外标记(@)]

从“React”导入React
常量withVisible=()=>Component=>
使用Visible.Component初始化{
状态={
可见:正确
}
render(){
返回(
)
}
}
使用Visible导出默认值

您的.babelrc可能没有添加decorator插件。 尝试以下操作:

您需要babel插件来实现此语法。

这可能会有帮助:
import React from 'react'

const withVisible = () => Component =>
    class WithVisible extends React.Component {
        state = {
            visible: true
        }
        render() {
            return (
                <Component visible={this.state.visible} {...this.props}/>
            )
        }
    }

export default withVisible