Установите глобальный шрифт по умолчанию в проекте React Native

#react-native #fonts #global

#react-native #шрифты #глобальный

Вопрос:

Я настроил и добавил набор шрифтов в /assest/fonts/, создал react-neative.config.js и связал их соответствующим образом.

Я могу вызвать пользовательский шрифт в своих стилях, но не смог инициализировать для него глобальные настройки.

Пытаюсь сделать это через компонент, например, так

 import React from 'react';
import { Text } from 'react-native';
export default props => <Text {...props} style={[{ fontFamily: 'Roboto-Regular' }, props.style]}>{props.children}</Text>
 

Затем импортируйте это либо через App.js или компонент страницы и т.д., вызвав customFont .
Однако это не отображает шрифт (я застрял с ОС по умолчанию или любым другим стилем, который был применен для этого конкретного элемента). Есть идеи?

Ответ №1:

Я думаю, что проблема здесь в том, что вы изменили порядок в объекте style на обратный. Вы должны присвоить стилю все свойства props.style , а затем применить к ним свой пользовательский шрифт

 import React from 'react';
import { Text } from 'react-native';
export default props => <Text {...props} style={{...props.style, fontFamily: 'Roboto-Regular'}}>{props.children}</Text>

 

Ответ №2:

Пожалуйста, исправьте assest на assets.

 module.exports = {
  assets: ['./assets/fonts']
}