Я хочу использовать некоторую абстракцию при создании моих компонентов React. Например:
class AbstractButton extends React.Component {
render() {
return (
<button
onClick={this.props.onClick}
className={this.definitions.className}>
{this.props.text}
</button>
}
}
class PrimaryButton extends AbstractButton {
constructor(options) {
super(options);
this.definitions = {
className: 'btn btn-primary'
};
}
}
class SuccessButton extends AbstractButton {
constructor(options) {
super(options);
this.definitions = {
className: 'btn btn-success'
};
}
}
Я не хочу передавать эти definitions
через props
, потому что знаю, что эти definitions
- в этом случае class
- никогда не изменятся.
Это анти-шаблон в реактиве? Или это нормально?
Мой вопрос относится к этой проблеме altjs: этот вид абстракции несовместим с @connectToStores
.