fix(Calendar): incorrect header month title

This commit is contained in:
陈嘉涵 2019-12-26 11:39:45 +08:00 committed by neverland
parent c1e8cb9146
commit 6d85fc0aac
2 changed files with 9 additions and 6 deletions

View File

@ -7,8 +7,7 @@ import {
compareDay,
compareMonth,
createComponent,
ROW_HEIGHT,
RENDER_OFFSET
ROW_HEIGHT
} from './utils';
import Popup from '../popup';
@ -135,10 +134,15 @@ export default createComponent({
// and find the elements that needs to be rendered
onScroll() {
const { body, months } = this.$refs;
const scrollTop = getScrollTop(body);
const top = scrollTop - RENDER_OFFSET;
const bottom = scrollTop + this.bodyHeight + RENDER_OFFSET;
const top = getScrollTop(body);
const bottom = top + this.bodyHeight;
const heights = months.map(item => item.height);
const heightSum = heights.reduce((a, b) => a + b, 0);
// iOS scroll bounce may exceed the range
if (top < 0 || bottom > heightSum) {
return;
}
let height = 0;
let firstMonth;

View File

@ -6,7 +6,6 @@ const [createComponent, bem, t] = createNamespace('calendar');
export { createComponent, bem, t };
export const ROW_HEIGHT = 64;
export const RENDER_OFFSET = 150;
export function formatMonthTitle(date: Date) {
return t('monthTitle', date.getFullYear(), padZero(date.getMonth() + 1));