|
|
@@ -3,24 +3,25 @@
|
|
|
<h2>{{ translate('basic') }}</h2>
|
|
|
<div>
|
|
|
<nut-signature @confirm="confirm" @clear="clear" custom-class="test" @start="start"></nut-signature>
|
|
|
- <p class="demo-tips demo1">{{ translate('tips') }}</p>
|
|
|
+ <img :src="demoSignUrl" class="demoSignUrl" v-if="demoSignUrl" />
|
|
|
</div>
|
|
|
<h2>{{ translate('title') }}</h2>
|
|
|
<div>
|
|
|
<nut-signature :lineWidth="lineWidth" :strokeStyle="strokeStyle" @end="end"></nut-signature>
|
|
|
+ <img :src="demoSignUrl2" class="demoSignUrl" v-if="demoSignUrl2" />
|
|
|
</div>
|
|
|
</div>
|
|
|
</template>
|
|
|
|
|
|
<script lang="ts">
|
|
|
-import { reactive } from 'vue';
|
|
|
+import { reactive, ref } from 'vue';
|
|
|
import { createComponent } from '@/packages/utils/create';
|
|
|
const { createDemo, translate } = createComponent('signature');
|
|
|
import { useTranslate } from '@/sites/assets/util/useTranslate';
|
|
|
const initTranslate = () =>
|
|
|
useTranslate({
|
|
|
'zh-CN': {
|
|
|
- basic: '基本用法',
|
|
|
+ basic: '基础用法',
|
|
|
title: '修改颜色和签字粗细',
|
|
|
tips: 'Tips: 点击确认按钮,下方显示签名图片'
|
|
|
},
|
|
|
@@ -34,18 +35,36 @@ export default createDemo({
|
|
|
props: {},
|
|
|
setup() {
|
|
|
initTranslate();
|
|
|
+ const demoSignUrl = ref('');
|
|
|
+ const demoSignUrl2 = ref('');
|
|
|
const state = reactive({
|
|
|
lineWidth: 4,
|
|
|
strokeStyle: 'green'
|
|
|
});
|
|
|
|
|
|
+ const clear = () => {
|
|
|
+ demoSignUrl.value = '';
|
|
|
+ console.log('清除事件');
|
|
|
+ };
|
|
|
+ const clear2 = () => {
|
|
|
+ demoSignUrl2.value = '';
|
|
|
+ console.log('清除事件');
|
|
|
+ };
|
|
|
const confirm = (canvas: any, data: any) => {
|
|
|
- let img = document.createElement('img');
|
|
|
- img.src = data;
|
|
|
- (document.querySelector('.demo1') as any).appendChild(img);
|
|
|
+ if (data === '') {
|
|
|
+ console.log(canvas);
|
|
|
+ return false;
|
|
|
+ }
|
|
|
+ demoSignUrl.value = data;
|
|
|
+ console.log('图片地址', canvas, data);
|
|
|
};
|
|
|
- const clear = () => {
|
|
|
- console.log('清除');
|
|
|
+ const confirm2 = (canvas: any, data: any) => {
|
|
|
+ if (data === '') {
|
|
|
+ console.log(canvas);
|
|
|
+ return false;
|
|
|
+ }
|
|
|
+ demoSignUrl2.value = data;
|
|
|
+ console.log('图片地址', canvas, data);
|
|
|
};
|
|
|
const start = () => {
|
|
|
console.log('签名开始');
|
|
|
@@ -53,7 +72,7 @@ export default createDemo({
|
|
|
const end = () => {
|
|
|
console.log('签名结束');
|
|
|
};
|
|
|
- return { ...state, confirm, clear, translate, start, end };
|
|
|
+ return { ...state, confirm, clear, translate, demoSignUrl, demoSignUrl2, confirm2, clear2, start, end };
|
|
|
}
|
|
|
});
|
|
|
</script>
|
|
|
@@ -67,4 +86,8 @@ export default createDemo({
|
|
|
color: #666;
|
|
|
}
|
|
|
}
|
|
|
+.demoSignUrl {
|
|
|
+ width: 100px;
|
|
|
+ height: 100px;
|
|
|
+}
|
|
|
</style>
|