提交 586c7134 authored 作者: 钟是志's avatar 钟是志

处理铜川的学生头像侧倒的bug

上级 8879eab7
import React, { useState } from 'react'; import React, { useState } from 'react';
export default function HandlePhoto({ urlObj, style, ...props}) {
let url = ''; /***
try { * 处理铜川学生头像颠倒的bug
url = JSON.parse(urlObj).url; * */
} catch (e) { export default function HandlePhoto({ urlObj, style, ...props }) {
url = urlObj; let url = '';
} try {
const [needTransForm, setTransform] = useState(false); url = JSON.parse(urlObj).url;
if (url) { } catch (e) {
const img = new Image(); url = urlObj;
img.src = url; }
// 判断是否有缓存 const [needTransForm, setTransform] = useState(false);
if (img.complete) { if (url) {
// 打印 getIsNeedTransform(url).then((res) => {
if (img.width > img.height) { if (res) {
setTransform(true); setTransform(true);
} }
console.log(img.width, img.height); });
// alert('from:complete : width:'+img.width+',height:'+img.height) } else {
} else { return null;
// 加载完成执行 }
img.onload = () => { let styleThis = {
if (img.width > img.height) { ...style,
setTransform(true); transform: needTransForm ? 'rotate(-90deg)' : 'none',
} };
}; return <img src={url} {...props} style={styleThis} />;
} }
}else{
return null; export function getIsNeedTransform(url) {
} return new Promise((resolve, reject) => {
let styleThis = { if (url) {
...style, const img = new Image();
transform : needTransForm ? 'rotate(-90deg)' : 'none', img.src = url;
} // 判断是否有缓存
return <img src={url} {...props} style={styleThis}/> if (img.complete) {
// 打印
if (img.width > img.height) {
resolve(true);
} else {
resolve(false);
}
} else {
// 加载完成执行
img.onload = () => {
if (img.width > img.height) {
resolve(true);
} else {
resolve(false);
}
};
}
img.onerror = () => {
resolve(false);
};
}
});
} }
Markdown 格式
0%
您添加了 0 到此讨论。请谨慎行事。
请先完成此评论的编辑!
注册 或者 后发表评论