2015-11-28 5 views
7

Допустим, я хочу использовать компонент с ниже определенного стиля:реагируют родной: как переопределить стиль по умолчанию, определенное в компоненте

var styles = StyleSheet.create({ 
    container: { 
    backgroundColor: '#ffffff' 
    }, 
}); 

Могу ли я переопределить базовый стиль с моим, как это?

<Component style={backgroundColor: 'transparent'}></Component> 

Это не сработало для меня, поэтому задайтесь вопросом, зависит ли это от того, поддерживает ли компонент его поведение.

+0

Он должен работать именно так, возможно, синтаксис выключен? Попробуйте стиль = {{backgroundColor: 'transparent'}}. –

ответ

15

Описание немного расплывчато. Это компонент, который вы написали сами? Предполагая это, он должен работать следующим образом:

export default React.createClass({ 
    render: function(){ 
    return(<View style={[ styles.container, this.props.style ]}>...</View> 
    } 
}) 

var styles = StyleSheet.create({ 
    container: { 
    backgroundColor: '#ffffff' 
    }, 
}); 
+0

это сторонний компонент, я бы предпочел не изменять его, поэтому вопрос. –

+0

Ну, тогда вы должны проверить их код, я думаю. Единственный способ получить какие-либо изменения стиля в этот компонент - через реквизит. Вы должны посмотреть на их элементы «Вид» и посмотреть, применяют ли они какие-либо реквизиты для создания свойств стиля. Это не обязательно будет называться стилем. –

+0

Вы можете попробовать обернуть компонент с видом и добавить к нему стили. (но это может быть неприменимо ко всем детям, так как нет каскадирования). – everlasto

Смежные вопросы