Mail.ruПочтаМой МирОдноклассникиВКонтактеИгрыЗнакомстваНовостиКалендарьОблакоЗаметкиВсе проекты

Помогите с позиционированием фотографии в React.js

- Ученик (111), на голосовании 1 год назад
Вот кусок кода, который загружает фотографию
Помогите отобразить превью фотографии в заданной рамке

  



Choose Your Photo


type="file"
id="file"
accept="image/*"
style={{ display: "none" }}
onChange={handleFileChange}
/>




{selectedFile ? (
Profile
) : (

)}

className="element"
alt="Element"
src="https://cdn.animaapp.com/projects/651aba4011cd84613b508e5b/releases/651ac821780675569006a4a1/img/-------1-2-1@2x.png"
/>
Голосование за лучший ответ
Татьяна Просветленный (36374) 1 год назад
Для отображения превью фотографии в заданной рамке в React.js можно использовать следующий код:
 

{selectedFile ? (
Profile
) : (

)}

className="element"
alt="Element"
src="https://cdn.animaapp.com/projects/651aba4011cd84613b508e5b/releases/651ac821780675569006a4a1/img/-------1-2-1@2x.png"
/>
Здесь selectedFile - это переменная, которая содержит выбранную пользователем фотографию. Если selectedFile не равен null, то отображается превью выбранной фотографии, иначе отображается пустой блок.
Для отображения выбранной фотографии используется тег img, а для отображения пустого блока - div.
Также в коде используются классы overlap-2, ellipse и element, которые могут быть определены в CSS.
-Ученик (111) 1 год назад
Классный запрос чату гопоте, жаль вы не умеете в жабаскрыпт))
-Ученик (111) 1 год назад
Если вдруг кому понадобится решение

  

{selectedFile ? (
Profile
) : (

className="element"
alt="Element"
src="https://cdn.animaapp.com/projects/651aba4011cd84613b508e5b/releases/651ac821780675569006a4a1/img/-------1-2-1@2x.png"
/>

)}
  
.index .element-1 {
height: 299px;
left: 2px;
object-fit: cover;
position: absolute;
top: -3px;
width: 299px;
}
sakharovlm Профи (844) 1 год назад
Вам нужно назначить функцию handleFileChange в теге <input> для обработки выбранного файл-объекта.

В частности, функция handleFileChange будет изменять состояние selectedFile, каждый раз, когда пользователь выбирает новый файл изображения.

Ваш код должен выглядеть примерно так:
====================================================================
 import React, { useState } from 'react'; 

const YourComponent = () => {

const [selectedFile, setSelectedFile] = useState(null);

const handleFileChange = (event) => {
setSelectedFile(event.target.files[0]);
};

return (



Choose Your Photo


type="file"
id="file"
accept="image/*"
style={{ display: "none" }}
onChange={handleFileChange}
/>




{selectedFile ? (
Profile
) : (

)}

className="element"
alt="Element"
src="https://cdn.animaapp.com/projects/651aba4011cd84613b508e5b/releases/651ac821780675569006a4a1/img/-------1-2-1@2x.png"
/>

);
}

export default YourComponent;

==================================================================

Убедитесь, что вы меняете "Заданная ширина" и "Заданная высота" на ширину и высоту, которую вы хотите использовать для предварительного просмотра изображения.

Обратите внимание, что вышеуказанный пример кода предполагает, что вы используете последние версии react, в которых доступны hooks. Если вы используете более старую версию, вам потребуется класс компонентов и метод setState для обработки состояния.
-Ученик (111) 1 год назад
Классный запрос чату гопоте, жаль вы не умеете в жабаскрыпт))
Dlazder Мудрец (16875) 1 год назад
А в чем трабл? Поменяй урл на нужный и все. Не понятен вопрос
-Ученик (111) 1 год назад
ты читать умеешь?
Dlazder Мудрец (16875) -, умею. И вижу у тебя волшебный атрибут src тега img который магическим образом отвечает за адрес с которого будет загружаться фото. У тебя там стоит картинка какая то уже, вот этого вот плейсхолдера
Похожие вопросы