import React from 'react';
import { routerStore } from '../store/routerStore';
import {ROUTE_PRE_FIX} from "./constant";
import numeral from 'numeral';

// 数字分割
export function numberSplit(num) {
    return numeral(num).format('0,0');
}

// js跳转界面方法
export function navigate(path,params) {
    if(!path) {
        console.error('请指定pathname');
        return;
    }
    routerStore.push({
        pathname:`/zh/${ ROUTE_PRE_FIX }`+path,
        state:params
    });
}

// js返回登录页
export function navigate_login(params) {
    routerStore.push({
        pathname:`/zh/login`,
        state:params
    });
}

export function navigate_replace(path,params) {
    if(!path) {
        console.error('请指定pathname');
        return;
    }
    routerStore.replace({
        pathname:`/zh/${ ROUTE_PRE_FIX }`+path,
        state:params
    });
}

/**
 * 判断当前的form表单是否有异常
 * @param fieldsError
 * @return {boolean}
 */
export function formHasErrors(fieldsError) {
    return Object.keys(fieldsError).some(field => fieldsError[field]);
}

// 将js中的px单位转成vw单位
export function pxToVw(px,unit = 'vw') {
    return px/375*100+unit;
}


// 将二进制文件转base 64
export function fileOrBlobToDataURL(file){
    return new Promise(resolve => {
        let a = new FileReader();
        a.readAsDataURL(file);
        a.onload = function (e){
            resolve(e.target.result);
        };
    });
}