我正在使用Meteor和ReactJS开发一个应用程序。我对React组件使用了ES6语法。使用旧的语法,您可以这样做:
MyComponent = React.createClass({
mixins: [ReactMeteorData],
render() {
...
}
})但是如何将其转换为ES6语法呢?
帮助感激。谢谢!
发布于 2015-12-23 09:59:22
当您提到"ES6语法“时,是否意味着使用ES6类创建React组件?如下所示:
class HelloMessage extends React.Component {
render() {
return <div>Hello {this.props.name}</div>;
}
}总之,如果使用ES6类创建React组件,则不支持混音。您必须使用React.createClass方式。
以下是React官方文档中的内容:可重用构件
无混合体 不幸的是,ES6在没有任何混合支持的情况下启动。因此,当您在ES6类中使用React时,不支持mixins。相反,我们正在努力使支持这样的用例变得更容易,而不需要混合。
发布于 2015-12-23 23:19:40
Id签出以下内容:https://github.com/brigand/react-mixin
它允许您在ES6类上使用混合器作为装饰器:
@ReactMixin.decorate(ReactMeteorData)
export default class MyClass extends React.Component {
...
}https://stackoverflow.com/questions/34432842
复制相似问题