2015-11-18 3 views
0

Есть ли способ в React Native установить стиль для стандартных элементов без добавления тега стиля для каждого из них? Как, например, я хочу, чтобы изменить стиль для них:React Native - стиль по умолчанию для элементов

<Text>This is test</Text> 
<Text>This is also text</Text> 
<Text>And so is this</Text> 

Как я понимаю, это единственный способ сказать отступа, чтобы сделать это:

<Text style={styles.indentText}>This is test</Text> 
<Text style={styles.indentText}>This is also text</Text> 
<Text style={styles.indentText}>And so is this</Text> 

В обычном веб-сайте CSS вы можете, очевидно, просто установите некоторые стили для всех элементов HTML, не добавляя к ним класс или идентификатор. Как это делается в React Native?

ответ

1

Вы можете установить уровень абстракции только для него:

IndentedText = React.createClass({ 
    render:() { 
    <Text style={styles.indentText}>{this.props.text}</Text> 
    } 
}) 

, а затем в других компонентах:

<IndentedText text={"This is a text"} /> 
<IndentedText text={"This is also a text"} /> 
<IndentedText text={"And so is this"} /> 
+0

Таким образом, ее действительно не представляется возможным дать настройки стиля по умолчанию для общих элементов? Спасибо за ваше предложение. – Hasen

+0

Я бы не хотел изменять исходный компонент Text. Просто используйте пользовательский компонент, как я предложил, и вы должны быть установлены. Я уверен, что вы не захотите, чтобы все ваши текстовые компоненты имели одинаковый стиль ... – eyal83

+0

Ну, я просто подумал, что это будет возможно исключительно с CSS-стилем. Как в webdesign: div {margin-left: 20px;} Без необходимости изменять какие-либо из основных отображаемых элементов. Я думаю, это не может быть сделано с React Native. – Hasen

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