首页 > 解决方案 > 如何在 React es6 中重写 react mixins?

问题描述

下午好,我正在尝试将项目从 React es5 转移到 React es6,我遇到了一个问题,即使用 mixins。我有这种类型的组件。

var BasicProfileComponent = React.createClass({

    mixins: [GoogleMapApi],

    componentWillMount: function() {
        this.initializeGoogleMapApi(this.onGoogleApiLoaded);
    }
)}

并混入其中

var GoogleMapApi = {
  initializeGoogleMapApi: function(callback) {
    if (window.apiLoaded) {
      callback();
    }

    // adding calback to a queue
    this.pullOfCallbacks.push(callback);
  }
}

如何将此组件重写为 React.Component 并在其中使用 mixin 或如何为该 mixin 创建替代条目?

标签: reactjs

解决方案


很长一段时间没有在反应中使用Mixins 了High Order ComponentsRender PropsHooks都是共享状态逻辑的有效替代方案,而且它们都比 mixins 工作得更好。


推荐阅读