✏️ 修复列表组件图片裁切不能等比裁切问题

This commit is contained in:
xujiang 2020-11-09 10:27:59 +08:00
parent 68eedbd245
commit 108d077d7b
5 changed files with 15 additions and 5 deletions

View File

@ -33,6 +33,7 @@ const List: IListSchema = {
key: 'sourceData',
name: '数据源',
type: 'DataList',
cropRate: 1,
},
{
key: 'round',

View File

@ -23,10 +23,11 @@ export type EditorModalProps = {
onCancel: ((e: React.MouseEvent<HTMLElement, MouseEvent>) => void) | undefined;
item?: TDataListDefaultTypeItem;
onSave: Function;
cropRate: number;
};
const EditorModal: FC<EditorModalProps> = props => {
const { item, onSave, visible, onCancel } = props;
const { item, onSave, visible, onCancel, cropRate } = props;
const onFinish = (values: Store) => {
console.log(values);
onSave && onSave(values);
@ -112,7 +113,7 @@ const EditorModal: FC<EditorModalProps> = props => {
valuePropName="fileList"
getValueFromEvent={normFile}
>
<Upload />
<Upload cropRate={cropRate} isCrop />
</Form.Item>
</Form>
</Modal>

View File

@ -129,6 +129,7 @@ const DndItem = DropTarget(
export type DataListMemo = {
onChange?: (v: TDataListDefaultType) => void;
value?: TDataListDefaultType;
cropRate: number;
};
export type DataListType = DataListMemo & {
@ -136,7 +137,7 @@ export type DataListType = DataListMemo & {
};
const List = function(props: DataListType) {
const { onChange, value, connectDropTarget } = props;
const { onChange, value, connectDropTarget, cropRate } = props;
const [list, setList] = useState(value);
const [visible, setVisible] = useState(false);
const [curItem, setCurItem] = useState<TDataListDefaultTypeItem>();
@ -230,7 +231,13 @@ const List = function(props: DataListType) {
</Button>
</div>
<EditorModal visible={visible} onCancel={handleCancel} item={curItem} onSave={handleSave} />
<EditorModal
visible={visible}
onCancel={handleCancel}
item={curItem}
onSave={handleSave}
cropRate={cropRate}
/>
</div>,
);
};

View File

@ -88,7 +88,7 @@ const FormEditor = (props: FormEditorProps) => {
)}
{item.type === 'DataList' && (
<Form.Item label={item.name} name={item.key}>
<DataList />
<DataList cropRate={item.cropRate} />
</Form.Item>
)}
{item.type === 'Color' && (

View File

@ -43,6 +43,7 @@ export interface IDataListConfigType {
key: string;
name: string;
type: 'DataList';
cropRate: number;
}
export type TDataListDefaultTypeItem = {