Я предполагаю, что вы используете много строк из-за стиля.Я делаю то же самое, когда пытаюсь извлечь максимальное количество информации о стилях в отдельную папку с разными файлами стилей.Не только переменные, но и сгруппированные стили.
Например:
const styleVariables = {
// Fonts
baseFontSize: 16,
largeFontSize: 24,
// Icons
smallIconSize: 24,
mediumIconSize: 36,
// Colors
mainColor: '#e85e45',
secondaryColor: '#a0c5d8',
offWhite: '#f4f4f4',
darkColor: '#404040',
// Dimensions
headerHeight: 70,
shadowSize: 6
};
export default styleVariables;
И я ссылаюсь на свои переменные в других файлах стилей, где сгруппирована связанная информация:
/* presentation.js */
import variables from './variables';
export const shadow = {
shadowColor: variables.darkColor,
shadowRadius: variables.shadowSize,
shadowOpacity: 0.35,
shadowOffset: {width: 0, height: 0}
};
export const centered = {
alignItems: 'center'
justifyContent: 'center'
}
И затем в моих компонентах я простоСсылка на мои стили:
import variables from './../styles/variables';
import {centered, shadow} from './../styles/presentation';
class RoundButton extends React.PureComponent {
render() {
return (
<View style={styles.button}>
{this.props.children}
</View>
);
}
}
const styles = StyleSheet.create({
button: {
width: variables.buttonSize,
height: variables.buttonSize,
borderRadius: variables.buttonSize / 2,
...centered
...shadow
}
Для стилей текста и общих презентаций это действительно сокращает код и позволяет легко модифицировать только в одном месте.