2017-10-20 3 views
0

이미지/파일을 다운로드하고 싶습니다. 내가 생각하는 방식은 이미지 위에 마우스를 올려 놓을 때 제거 버튼과 같습니다. 이미지가 서버에서 렌더링되면 이상적인 다운로드 아이콘이됩니다. 내 생각은 이런 것입니다이미지/파일을 다운로드하는 방법

<a href={srcValue} download> 

및 감싸기 img 태그입니다. 각각 파일 용입니다. 그래서 모든 파일 (FileInput, FileInputPreview, ImageInput, ImageField 등)을 덮어 쓰는 대신 더 좋은 방법이 있습니까

고마워요!

+0

질문을 편집 할 수 있습니까? '''이미지/파일을 서버에 업로드 할 때 이미지를 다운로드 할 수있다 ''이 부분은 혼란 스럽습니다. –

+0

@ReiDien이 방금 삭제했습니다. 나는 우리가 에이르에서 필드 구성 요소를 사용할 때를 의미했습니다. – thodwris

답변

1

시도해 볼 수 있습니다.

export const Something = (props) => { 
    return (
    <List {...props} > 
     <Datagrid> 
     <ReferenceField label="Get Image" source="id" reference="pathToImage" linkType={false} > 
      <ImageLink /> 
     </ReferenceField> 
     </Datagrid> 
    </List> 
) 
} 

const ImageLink = ({record}) => { 
    return (
    <a href={config.staticHost + '/' + record.nameOnDisk} target="_blank" download > 
     <FlatButton label="Download" /> 
    </a> 
) 
} 

레코드에 이미지의 URL이 포함되어 있으면 ReferenceField를 건너 뛸 수 있습니다. 레코드 전체가 아닌 URL에서 전달할 수 있습니다.