1.0.1 • Published 1 year ago

@lspriv/wc-plugin-disabled v1.0.1

Weekly downloads
-
License
MIT
Repository
-
Last release
1 year ago

Wx Calendar Plugin For Disabled

NPM Version Static Badge GitHub License

小程序日历 wx-calendar 日期禁用插件

使用

  • 小程序基础库 SDKVersion >= 3.0.0
  • 日历组件 wx-calendar >= 1.7.1

安装

npm i @lspriv/wc-plugin-disabled -S

构建

微信小程序开发工具菜单栏:工具 --> 构建 npm 官方文档

页面使用

<calendar id="calendar" />
const { WxCalendar } = require('@lspriv/wx-calendar/lib');
const { DisabledPlugin, DISABLED_PLUGIN_KEY } = require('@lspriv/wc-plugin-disabled');

WxCalendar.use(DisabledPlugin, { 
  ... // 见插件选项,也可以不传
});

Page({
  handleCalendarLoad() {
    const calendar = this.selectComponent('#calendar');
    const disabledPlugin = calendar.getPlugin(DISABLED_PLUGIN_KEY);

    disabledPlugin.disable([
      { year: 2024, month: 6, day: 7 }, // 禁用单个日期
      // 禁用一个范围的日期
      [                              
        { year: 2024, month: 6, day: 10 },
        { year: 2024, month: 6, day: 15 }
      ]
    ]);

    disabledPlugin.isDateDisabled({ year: 2024, month: 6, day: 7 }); // 判断某个日期是否被禁用

    // 对传入的日期进行过滤,过滤掉当前已被禁用的日期
    disabledPlugin.filter([  
      { year: 2024, month: 6, day: 6 }, // 单个日期
      // 一个范围
      [                                 
        { year: 2024, month: 6, day: 12 },
        { year: 2024, month: 6, day: 18 }
      ]
    ])
  }
})

插件选项

方法

disable 禁用日期

{
  /**
   * @param dates 要禁用的日期
   * @param clear 是否清除当前已禁用的日期,默认 false
   */
  (dates: Array<CalendarDay | DateRange>, clear?: boolean): void;
}
type DateRange = [start: CalendarDay, end: CalendarDay];

isDateDisabled 日期是否被禁用

{
  /**
   * @param date 要判断的日期
   */
  (date: CalendarDay): boolean;
}

filter 过滤日期

{filter
  /**
   * @param date 要判断的日期
   */
  (dates: Array<CalendarDay | DateRange>): Array<CalendarDay | DateRange>;
}

关于

有任何问题或是需求请到 `Issues` 面板提交
忙的时候还请见谅
有兴趣开发维护的道友加微信

wx_qr