Я создаю локальное приложение погоды в React через приложение Create React, и мне нужно динамически отображать значок погоды в зависимости от типа погоды. У меня есть этот код:
import React from 'react';
import { ReactComponent as MistIcon } from 'assets/img/weather/mist.svg';
import { ReactComponent as RainIcon } from 'assets/img/weather/rain.svg';
import { ReactComponent as SnowIcon } from 'assets/img/weather/snow.svg';
const icon = (props) => {
const { weatherType } = props;
const WeatherIconName = `${weatherType}Icon`; //Rain or Snow or Mist etc
return(
<Icon size={'lg'}>
<WeatherIconName/> //here I'm trying to render <MistIcon/> or <SnowIcon/> or <RainIcon/>
</Icon>
);
};
export default icon;
И он просто выдает ошибку вроде этого: Предупреждение: тег не распознается в этом браузере. Если вы намеревались визуализировать компонент React, начните его имя с заглавной буквы.
Но если я назову его явно, вот так, он будет работать и отобразит правильный значок:
return(
<Icon size={'lg'}>
<MistIcon/>
</Icon>
);
Помогите мне, пожалуйста, улучшить мой код, чтобы динамически отображать иконки, если это возможно. Извините, если вопрос - тупой, я новичок в React.
Заранее спасибо!