Warning: file_get_contents(/data/phpspider/zhask/data//catemap/9/javascript/421.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181
Javascript 验证图像';s宽高比(宽/高),带Yup&;福米克_Javascript_Formik_Yup - Fatal编程技术网

Javascript 验证图像';s宽高比(宽/高),带Yup&;福米克

Javascript 验证图像';s宽高比(宽/高),带Yup&;福米克,javascript,formik,yup,Javascript,Formik,Yup,我正在尝试使用yup对图像文件进行验证,我发现它只验证大小和文件类型 这是我目前使用的yup验证 file:lazy(值=>{ 开关(值类型){ 大小写“string”: 返回字符串().required(errorHandler.requiredFile()); 违约: 返回混合() .required(errorHandler.requiredFile()) .测试( “文件大小”, “大小”, value=>value&&value.size值&&SUPPORTED_格式。包括(valu

我正在尝试使用yup对图像文件进行验证,我发现它只验证大小和文件类型

这是我目前使用的yup验证

file:lazy(值=>{
开关(值类型){
大小写“string”:
返回字符串().required(errorHandler.requiredFile());
违约:
返回混合()
.required(errorHandler.requiredFile())
.测试(
“文件大小”,
“大小”,
value=>value&&value.size值&&SUPPORTED_格式。包括(value.type)
)
}

}),
我使用这个函数成功地做到了这一点

函数检查Aspectratio(值){
返回新承诺(解决=>{
const reader=new FileReader();
reader.readAsDataURL(值);
reader.onload=函数(值){
const img=新图像();
img.src=value.target.result;
img.onload=函数(){
const aspectRatio=this.width/this.height;
解决(aspectRatio);
};
};
});

}
非常感谢。它救了我。嗨,你怎么做“在对象上定义一个新属性”的部分?当使用onClick在类型为“file”@alexr89的输入上上载文件时,我似乎无法做到这一点。请确保定义属性的对象存在,然后您可以修改它