Skip to content

Signature 签名

介绍

基于 Canvas 的签名组件。默认竖屏模式使用,如使用横屏模式,请开发者自行设置旋转角度或者宽高。

基础用法

vue
<script lang="ts" setup>
import { ref } from 'vue'

const demoSignUrl = ref('')

const confirm = (canvas: any, data: string) => {
  if (data === '') {
    console.log(canvas)
    return false
  }
  demoSignUrl.value = data
  console.log('图片地址', canvas, data)
}

const clear = () => {
  demoSignUrl.value = ''
  console.log('清除事件')
}
</script>

<template>
  <nut-signature
    @confirm="confirm"
    @clear="clear"
  />
  <image v-if="demoSignUrl" :src="demoSignUrl" class="demoSignUrl" />
</template>

修改颜色和签字粗细

vue
<script lang="ts" setup>
import { ref } from 'vue'

const lineWidth = ref(4)
const strokeStyle = ref('green')
const demoSignUrl = ref('')
const confirm = (canvas: any, data: string) => {
  if (data === '') {
    console.log(canvas)
    return false
  }
  demoSignUrl.value = data
  console.log('图片地址', canvas, data)
}

const clear = () => {
  demoSignUrl.value = ''
  console.log('清除事件')
}
</script>

<template>
  <nut-signature
    :line-width="lineWidth"
    :stroke-style="strokeStyle"
    @confirm="confirm"
    @clear="clear"
  />
  <image v-if="demoSignUrl" :src="demoSignUrl" class="demoSignUrl" />
</template>

API

Props

参数说明类型可选值默认值
line-width线条的宽度number-2
stroke-style绘图笔触颜色string-'#000'
type图片格式string-'png'
un-support-tpl不支持Canvas情况下的展示文案string--

Events

事件名说明类型
start签名开始回调函数(指某次笔画的开始)() => void
signing正在签名的回调函数(指某次笔画进行中)(event: Event) => void
end签名结束回调函数(指某次笔画的结束)() => void
confirm点击确认按钮触发事件回调函数(canvas: any, filePath?: string) => void
clear点击重签按钮触发事件回调函数() => void

MIT Licensed