diff --git a/src/directives/index.ts b/src/directives/index.ts
index 4015ede..634d804 100644
--- a/src/directives/index.ts
+++ b/src/directives/index.ts
@@ -1,9 +1,10 @@
import { App, Directive } from 'vue';
import copy from './modules/copy';
import existShow from './modules/existShow';
+import vPrint from './modules/print';
import waterMarker from './modules/waterMarker';
-const directivesList: { [key: string]: Directive } = { copy, waterMarker, existShow };
+const directivesList: { [key: string]: Directive } = { copy, waterMarker, existShow, vPrint };
/**
* 挂载自定义事件
diff --git a/src/directives/modules/existShow.ts b/src/directives/modules/existShow.ts
index 84f7367..d7f9171 100644
--- a/src/directives/modules/existShow.ts
+++ b/src/directives/modules/existShow.ts
@@ -1,16 +1,11 @@
import { Directive } from 'vue';
-interface ElType extends HTMLElement {
- copyData: string | number; // 定义一个属性,用于存储需要复制的数据
- __handleClick__: any; // 定义一个属性,用于存储事件处理函数
-}
-
/**
* * 当关闭这个页面时提示是否退出,不需要传递参数
*/
const existShow: Directive = {
// 指令与元素绑定时触发
- beforeMount(el: ElType) {
+ beforeMount() {
window.onbeforeunload = function (event) {
(event || window.event).returnValue = '确定离开此页吗?';
};
diff --git a/src/directives/modules/print.ts b/src/directives/modules/print.ts
new file mode 100644
index 0000000..177b4cf
--- /dev/null
+++ b/src/directives/modules/print.ts
@@ -0,0 +1,23 @@
+import type { DirectiveBinding } from 'vue';
+import { Directive } from 'vue';
+
+interface ElType extends HTMLElement {
+ copyData: string | number; // 定义一个属性,用于存储需要复制的数据
+ __handleClick__: any; // 定义一个属性,用于存储事件处理函数
+}
+
+const vPrint: Directive = {
+ mounted(el: ElType, binding: DirectiveBinding) {
+ el.copyData = binding.value;
+ el.addEventListener('click', handelClick);
+ },
+ beforeMount(el: ElType) {
+ el.removeEventListener('click', el.__handleClick__);
+ },
+};
+
+function handelClick(this: any) {
+ print();
+}
+
+export default vPrint;
diff --git a/src/views/bunny/default/My.vue b/src/views/bunny/default/My.vue
index 4c508f3..9426076 100644
--- a/src/views/bunny/default/My.vue
+++ b/src/views/bunny/default/My.vue
@@ -1,13 +1,19 @@
-
+
+