@beisen-phoenix/lookup
Version:
---
48 lines (40 loc) • 1.56 kB
JavaScript
import fetch from '@beisen/platform-fetch';
import isEqual from 'lodash/isEqual';
import isEmpty from 'lodash/isEmpty';
export function callFetch(url, params, succCallBack, errorCallBack) {
fetch(url, {
method: 'POST',
params: params,
}).then(succCallBack, errorCallBack)
}
//判断props数据是否改变,无变化返回null,有变化返回json对象
export function getUpdateData (data, now, pre) {
let ret = {};
(data || []).map(n => {
if (!isEqual(now[n], pre[n])){
ret[n] = now[n]
}
})
return isEmpty(ret) ? null : ret
}
//按弹层高度计算规则,计算弹层的高度
export const calculateModalHeight = (height, diff) => {
return (height || window.innerHeight) * 0.9 - diff
}
//判断弹窗是否出现滚动条,并返回高度
export const resetCalculateHeight = (className, adjustValue = 0) => {
//此判断仅限于lookup嵌入到Modal内的计算
let mainContainer = document.querySelector(className)
let mainContainerDiv = mainContainer && mainContainer.parentElement || null
let searchFormDiv = mainContainer.querySelector('.phoenix-search-form')
if (mainContainerDiv){
let scrollY = mainContainerDiv.clientHeight - searchFormDiv.clientHeight - adjustValue
if (mainContainerDiv.scrollHeight >= mainContainerDiv.clientHeight) {
return {scrollY: scrollY}
}
}
}
// 对象属性为undefined时返回空
export const getValueUseKey = (obj,key) => {
return typeof key === 'undefined' ? '' : obj[key];
}