最简单的例子:
import React from 'react';
import ReactDOM from 'react-dom';
const decorator = context => WrappedComponent => <WrappedComponent context={context}/>;
@decorator(1)
class Parent extends React.Component {
render(){
return 1;
}
}
ReactDOM.render(<Parent />, document.getElementById('app-root'));
错误:
react.development.js:225警告:react.createElement:类型无效
--需要字符串(用于内置组件)或类/函数(用于复合组件),但得到:。你不小心
导出JSX文本而不是组件?
react dom.development.js:55未捕获错误:元素类型无效:
应为字符串(用于内置组件)或类/函数(用于
复合组件),但得到:对象。
巴别塔配置:
"plugins": [
[
"@babel/plugin-proposal-decorators",
{
"legacy": true
}
]
]
我的装饰师有什么问题?