Как динамически переопределить стиль вложенных компонентов в NativeBase - PullRequest
0 голосов
/ 14 апреля 2020

У нас есть кнопка, которая содержит текстовый компонент. У нас есть тема по умолчанию для NativeBase (материал). Кнопка может иметь другое состояние: отключено, успех, предупреждение. Они могут измениться во время выполнения. Что касается каждого состояния, кнопка должна иметь различный цвет фона и текст.

Вопрос. Как правильно это реализовать? Должен ли я рассчитывать стили для каждого состояния внутри кнопки для самой кнопки и текста? Разве это не было бы грязно в случае немного более сложного составного компонента?

import React, { Component } from 'react';
import { Container, Content, Button, Text, StyleProvider } from 'native-base';
import getTheme from './native-base-theme/components';
import material from './native-base-theme/variables/material';


const Btn = (props) => {

  return <Button>
           <Text>
              Btn
            </Text>
          </Button>
}
​export default class ThemeExample extends Component {
  render() {
    return (
      <StyleProvider style={getTheme(material)}>
        <Container>
          <Content>
            <Btn />
          </Content>
        </Container>
      </StyleProvider>
    );
  }
}
Добро пожаловать на сайт PullRequest, где вы можете задавать вопросы и получать ответы от других членов сообщества.
...