首页
学习
活动
专区
工具
TVP
发布
社区首页 >问答首页 >是否可以定义一个可以在React组件中覆盖的ReactJS Mixin方法?

是否可以定义一个可以在React组件中覆盖的ReactJS Mixin方法?
EN

Stack Overflow用户
提问于 2014-06-02 05:53:37
回答 5查看 9.4K关注 0票数 17

Facebook的ReactJS库对which component methods can be overridden and how有严格的规定。除非它是specifically allowed,否则我们不能重新定义方法。

对于我的自定义混入,如果我有一个我想要重写的方法,我该如何更新SpecPolicy呢?这有可能吗?

这个例子有点做作,但它应该能让人明白这一点。假设我有下面的mixin,它试图提供一个默认的renderItem方法,如果需要的话,它将被覆盖。当我试图呈现组件<Hello ... />时,我得到了一个Invariant Violation错误。你可以找到a jsfiddle here

代码语言:javascript
复制
var MyMixin = {
    render: function () {
        return this.renderItem();
    },
    renderItem: function () {
        return <div>Hello {this.props.name}</div>;
    }
};

var Hello = React.createClass({
    mixins: [MyMixin],
    renderItem: function() {
        return <div>Hey {this.props.name}</div>;
    }
});
EN
页面原文内容由Stack Overflow提供。腾讯云小微IT领域专用引擎提供翻译支持
原文链接:

https://stackoverflow.com/questions/23984887

复制
相关文章

相似问题

领券
问题归档专栏文章快讯文章归档关键词归档开发者手册归档开发者手册 Section 归档