Nuxt Nation 大会即将到来。加入我们,时间为 11 月 12 日至 13 日。

vcalendar
@samk-dev/nuxt-vcalendar

Nuxt 的 VCalendar 模块

Nuxt VCalendar

npm versionnpm downloadsLicenseNuxt

将 V Calendar 集成到 Nuxt 中

VCalendar 文档

功能

  • 零配置
  • 为 VCalendar 组件添加前缀
  • 自动导入所有 VCalendar 组件或仅导入所需的组件

快速设置

  1. @samk-dev/nuxt-vcalendar 依赖项添加到您的项目中
npx nuxi@latest module add @samk-dev/nuxt-vcalendar

就是这样!您现在可以在您的 Nuxt 应用中使用 Nuxt VCalendar ✨

手动安装

  1. 将 @samk-dev/nuxt-vcalendar 依赖项添加到您的项目中
# Using pnpm
pnpm add -D @samk-dev/nuxt-vcalendar

# Using yarn
yarn add --dev @samk-dev/nuxt-vcalendar

# Using npm
npm install --save-dev @samk-dev/nuxt-vcalendar
  1. @samk-dev/nuxt-vcalendar 添加到 nuxt.config.ts 文件的 modules 部分
export default defineNuxtConfig({
  modules: ['@samk-dev/nuxt-vcalendar']
})

Stackblitz 示例

https://stackblitz.com/edit/nuxt-starter-2zwgab?file=app.vue

使用示例

<script setup lang="ts">
  import { ref } from '#imports'
  const date = ref(new Date())

  const attrs = ref([
    {
      key: 'today',
      highlight: {
        color: 'green',
        fillMode: 'solid'
      },
      dates: new Date()
    }
  ])
</script>

<template>
  <div>
    <client-only>
      <h2>Calendar</h2>
      <VCalendar v-model="date" />
      <h2>Date Picker</h2>
      <VDatePicker v-model="date" :attributes="attrs" />
    </client-only>
  </div>
</template>

模块选项

export type VCalendarComponents = {
  DatePicker: boolean
  Calendar: boolean
}
export interface ModuleOptions {
  /**
   * @description prefix instead of v-
   * @default V
   */
  prefix: string
  /**
   * @description load v-calendar styles
   * @default true
   */
  defaultCss: boolean
  /**
   * @description load custom stylesheet
   * @default undefined
   */
  cssPath?: string
  /**
   * @description v-calendar options
   * @see https://vcalendar.io/calendar/api.html#defaults
   */
  calendarOptions?: Defaults
  /**
   * @description auto import v-calendar components
   * @default {DatePicker, true, Calendar: true}
   */
  autoImports: VCalendarComponents
}

开发

# Install dependencies
npm install

# Generate type stubs
npm run dev:prepare

# Develop with the playground
npm run dev

# Build the playground
npm run dev:build

# Run ESLint
npm run lint

# Run Vitest
npm run test
npm run test:watch

# Release new version
npm run release

Alt