2.1.0 • Published 1 year ago

signature-suracheng-test v2.1.0

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

sh-signature

web signature 的 Vue.js 组件。 web 电子签名组件,同时支持 Vue.js 2/3。

Attributes

单人签

NameDescription
model-value / v-model是否显示 弹窗
billCode签名单ID
appendToBodyDialog 自身是否插入至 body 元素上
signatureToken项目生成的 签名token
envType环境 - 默认为 生产环境 prd

组合签

NameDescription
model-value / v-model是否显示 弹窗
billCode签名单ID
userCode当前用户工号
appendToBodyDialog 自身是否插入至 body 元素上
signatureToken项目生成的 签名token
envType环境 - 默认为 生产环境 prd

安装 & 使用

npm install @shinho-sh/sh-signature --save

由于不同项目接入签名组件时 token 不同,需将 token 在组件中传入

ECM

// main.js
import Vue from 'vue'
import App from './App.vue'
import { ShSignature, ShMultiuSignature } from '@shinho-sh/sh-signature'

Vue.component(ShSignature.name, ShSignature);
Vue.component(ShMultiuSignature.name, ShMultiuSignature);

new Vue({
  render: h => h(App),
}).$mount('#app')
<!-- page.vue -->
<template>
  <div id="app">
    <button @click="handleClick">会签</button>
    <ShMultiuSignature v-model="visible" :billCode="billCode" :userCode="userCode"></ShMultiuSignature>
  </div>
</template>

<script>

export default {
  name: 'App',
  data () {
    return {
      visible: false,
      billCode: "",
      userCode: ""  // 工号
    }
  },
  methods: {
    handleClick () {
      // TODO 调用创建业务单接口,获取 billCode
      this.visible = true
    }
  }
}
</script>
// main.js
import { createApp } from 'vue'
import App from './App.vue'

import { ShSignature, ShMultiuSignature } from '@shinho-sh/sh-signature';

function installUI (app) {
  app.component(ShSignature.name, ShSignature)
  app.component(ShMultiuSignature.name, ShMultiuSignature);
}

const ins = createApp(App)
installUI(ins)
ins.mount('#app')
<template>
  <button @click="handleClick">会签</button>
  <ShMultiuSignature v-model="visible" :billCode="billCode" :userCode="userCode"></ShMultiuSignature>
</template>

<script>
import { ref } from "vue"
export default {
  name: 'App',
  setup () {
    const visible = ref(false)
    const info = reactive({
      billCode: "",
      userCode: "" // 工号
    })

    const handleClick = () => {
      // TODO 调用创建业务单接口,获取 billCode
      visible.value = true
    }

    return {
      visible,
      handleClick
    }
  }
}
</script>

demo 对应地址

examples
│   ├── signature
│   │   ├── multiuSignature.vue
│   │   └── signature.vue

CDN & 全局变量

用如下方式在 HTML 中插入 <script> 标签,并且通过 window.ShSignature 来访问组件接口:

<script src="https://cdn.jsdelivr.net/npm/signature_pad@4.1.5/dist/signature_pad.umd.min.js"></script>
<script src="https://unpkg.com/axios@1.1.2/dist/axios.min.js"></script>
<script src="https://unpkg.com/vue@3.2.30/dist/vue.global.js"></script>
<script src="../../../dist/vue3/dist/index.umd.js"></script>
const app = Vue.createApp(...)

// 全局注册组件(也可以使用局部注册)
app.use(ShSignature)
<script src="https://cdn.jsdelivr.net/npm/signature_pad@4.1.5/dist/signature_pad.umd.min.js"></script>
<script src="https://cdn.jsdelivr.net/npm/axios@1.1.2/dist/axios.min.js"></script>

<script src="https://cdn.jsdelivr.net/npm/vue/dist/vue.js"></script>
<script src="../../../dist/vue2/dist/index.umd.js"></script>
// 全局注册组件(也可以使用局部注册)
Vue.use(ShSignature)

demo 地址

examples
│   └── umd
│       ├── vue2-umd-test.html
│       └── vue3-umd-test.html

组件本地开发

$ npm i
$ npm run serve
  • 打开 http://localhost:8080/signature 来查看 个人签demo。
  • 打开 http://localhost:8080/multiu/signature 来查看 组合签demo。
2.1.0

1 year ago

2.0.3

1 year ago

2.0.2

1 year ago

2.0.1

1 year ago

1.6.0

1 year ago

1.5.0

1 year ago

1.4.0

1 year ago

1.3.0

1 year ago

1.2.0

1 year ago

1.1.0

1 year ago

1.0.0

1 year ago