Изменение входного значения вызывает импорт шрифта

Я работаю с reactjs и styled-components. У меня есть InputComponent, который содержит styled.input. Мой родительский компонент содержит этот компонент Input, const styled.h1 и компонент кнопки.

Мой родительский рендер выглядит так:

  render() {
    return (
      <Div>
        <GlobalStyle/>
        <H1>Hallo</H1>
        <MyInput value = {this.state.value} onChangeValue = {this.handleChangeEventValue} />
        <br/><MyButton msg = {this.state.value}/>
      </Div>
    );
  }

Возможно, вы заметили компонент GlobalStyle. Компонент GlobalStyle взят из стилизованных компонентов и предоставляет наследуемые стили. Это выглядит так:

const GlobalStyle = createGlobalStyle `
  body {
    @import url('https://fonts.googleapis.com/css?family=Lato');
    font-family: 'Lato',sans-serif;
  }
`

Моя проблема: Шрифт изначально работает, но когда я что-то набираю в поле ввода, он повторно загружает шрифт и сбрасывает мой h1. Вживую это выглядит так, будто он становится жирным и не жирным, но его просто меняют шрифты.

После нескольких букв моя сетевая отладка выглядит так: Сетевой образ

Спасибо, что помогли мне.

Проект https://codesandbox.io/s/github/robertdudaa/reactjstest

Поведение ключевого слова "this" в стрелочной функции в сравнении с нормальной функцией
Поведение ключевого слова "this" в стрелочной функции в сравнении с нормальной функцией
В JavaScript одним из самых запутанных понятий является поведение ключевого слова "this" в стрелочной и обычной функциях.
Концепция локализации и ее применение в приложениях React ⚡️
Концепция локализации и ее применение в приложениях React ⚡️
Локализация - это процесс адаптации приложения к различным языкам и культурным требованиям. Это позволяет пользователям получить опыт, соответствующий...
Улучшение производительности загрузки с помощью Google Tag Manager и атрибута Defer
Улучшение производительности загрузки с помощью Google Tag Manager и атрибута Defer
В настоящее время производительность загрузки веб-сайта имеет решающее значение не только для удобства пользователей, но и для ранжирования в...
Безумие обратных вызовов в javascript [JS]
Безумие обратных вызовов в javascript [JS]
Здравствуйте! Юный падаван 🚀. Присоединяйся ко мне, чтобы разобраться в одной из самых запутанных концепций, когда вы начинаете изучать мир...
Система управления парковками с использованием HTML, CSS и JavaScript
Система управления парковками с использованием HTML, CSS и JavaScript
Веб-сайт по управлению парковками был создан с использованием HTML, CSS и JavaScript. Это простой сайт, ничего вычурного. Основная цель -...
JavaScript Вопросы с множественным выбором и ответы
JavaScript Вопросы с множественным выбором и ответы
Если вы ищете платформу, которая предоставляет вам бесплатный тест JavaScript MCQ (Multiple Choice Questions With Answers) для оценки ваших знаний,...
0
0
78
1

Ответы 1

ты можешь попробовать:

const GlobalStyle = createGlobalStyle `
 @import url('https://fonts.googleapis.com/css?family=Lato');
  body {
    font-family: 'Lato',sans-serif;
  }
`

или вы можете просто импортировать шрифт в index.html в свою общую папку каталога проекта:

<link href = "https://fonts.googleapis.com/css?family=css?family=Lato" rel = "stylesheet" type='text/css'>

надеюсь, это поможет тебе Спасибо :)

Привет, спасибо за помощь, но оба решения не работают.

Robert 18.10.2018 11:22

owh .. не могли бы вы загрузить свой файл на здесь

menomanabdulla 18.10.2018 11:26

это супер странно, иногда работает, иногда не работает codeandbox.io/s/github/robertdudaa/reactjstest

Robert 18.10.2018 11:35

Я не нашел ничего, что вы применили, вот ваш общественный html, а здесь - ваш css. Вы можете добавить <link href = "https://fonts.googleapis.com/css?family=css?family=Lat‌​o" rel = "stylesheet" type='text/css'> в свой файл index.html в общей папке и добавить font-family: 'Lato', sans-serif; в свой css

menomanabdulla 18.10.2018 12:04

Другие вопросы по теме