@lambo-design/shared 1.0.0-beta.38 → 1.0.0-beta.381
This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
- package/config/config.js +24 -3
- package/config/index.js +7 -2
- package/config/locale.js +61 -0
- package/config/themes/atrovirens/atrovirens.css +590 -0
- package/config/themes/atrovirens/atrovirens.css.map +1 -0
- package/config/themes/atrovirens/atrovirens.less +681 -0
- package/config/themes/atrovirens/var.less +689 -0
- package/config/themes/blue/blue.css +590 -0
- package/config/themes/blue/blue.css.map +1 -0
- package/config/themes/blue/blue.less +684 -0
- package/config/themes/blue/var.less +692 -0
- package/config/themes/blue-208/blue-208.css +590 -0
- package/config/themes/blue-208/blue-208.css.map +1 -0
- package/config/themes/blue-208/blue-208.less +685 -0
- package/config/themes/blue-208/var.less +691 -0
- package/config/themes/blue-digital/blue-digital.css +590 -0
- package/config/themes/blue-digital/blue-digital.css.map +1 -0
- package/config/themes/blue-digital/blue-digital.less +684 -0
- package/config/themes/blue-digital/var.less +692 -0
- package/config/themes/blue-leaf/blue-leaf.css +590 -0
- package/config/themes/blue-leaf/blue-leaf.css.map +1 -0
- package/config/themes/blue-leaf/blue-leaf.less +685 -0
- package/config/themes/blue-leaf/var.less +691 -0
- package/config/themes/blue-white/blue-white.css +590 -0
- package/config/themes/blue-white/blue-white.css.map +1 -0
- package/config/themes/blue-white/blue-white.less +685 -0
- package/config/themes/blue-white/var.less +691 -0
- package/config/themes/blue-white-big/blue-white-big.css +590 -0
- package/config/themes/blue-white-big/blue-white-big.css.map +1 -0
- package/config/themes/blue-white-big/blue-white-big.less +685 -0
- package/config/themes/blue-white-big/var.less +691 -0
- package/config/themes/blue-white-tight/blue-white-tight.css +591 -0
- package/config/themes/blue-white-tight/blue-white-tight.css.map +1 -0
- package/config/themes/blue-white-tight/blue-white-tight.less +685 -0
- package/config/themes/blue-white-tight/var.less +693 -0
- package/config/themes/canglan/canglan.css +590 -0
- package/config/themes/canglan/canglan.css.map +1 -0
- package/config/themes/canglan/canglan.less +682 -0
- package/config/themes/canglan/var.less +693 -0
- package/config/themes/cuiwei/cuiwei.css +590 -0
- package/config/themes/cuiwei/cuiwei.css.map +1 -0
- package/config/themes/cuiwei/cuiwei.less +682 -0
- package/config/themes/cuiwei/var.less +691 -0
- package/config/themes/danqing/danqing.css +590 -0
- package/config/themes/danqing/danqing.css.map +1 -0
- package/config/themes/danqing/danqing.less +682 -0
- package/config/themes/danqing/danqing.wxss +576 -0
- package/config/themes/danqing/var.less +696 -0
- package/config/themes/deep/deep.css +590 -0
- package/config/themes/deep/deep.css.map +1 -0
- package/config/themes/deep/deep.less +682 -0
- package/config/themes/deep/var.less +694 -0
- package/config/themes/default/default.css +404 -57
- package/config/themes/default/default.css.map +1 -1
- package/config/themes/default/default.less +381 -16
- package/config/themes/default/var.less +390 -11
- package/config/themes/eap/eap.css +590 -0
- package/config/themes/eap/eap.css.map +1 -0
- package/config/themes/eap/eap.less +685 -0
- package/config/themes/eap/var.less +693 -0
- package/config/themes/gold/gold.css +590 -0
- package/config/themes/gold/gold.css.map +1 -0
- package/config/themes/gold/gold.less +685 -0
- package/config/themes/gold/var.less +386 -5
- package/config/themes/hubei/hubei.css +591 -0
- package/config/themes/hubei/hubei.css.map +1 -0
- package/config/themes/hubei/hubei.less +685 -0
- package/config/themes/hubei/var.less +693 -0
- package/config/themes/index.js +34 -4
- package/config/themes/lime/lime.css +590 -0
- package/config/themes/lime/lime.css.map +1 -0
- package/config/themes/lime/lime.less +685 -0
- package/config/themes/lime/var.less +385 -5
- package/config/themes/orange/orange.css +354 -7
- package/config/themes/orange/orange.css.map +1 -1
- package/config/themes/orange/orange.less +366 -0
- package/config/themes/orange/var.less +386 -5
- package/config/themes/red/red.css +354 -7
- package/config/themes/red/red.css.map +1 -1
- package/config/themes/red/red.less +366 -0
- package/config/themes/red/var.less +386 -5
- package/config/themes/sichuan/sichuan.css +590 -0
- package/config/themes/sichuan/sichuan.css.map +1 -0
- package/config/themes/sichuan/sichuan.less +685 -0
- package/config/themes/sichuan/var.less +691 -0
- package/config/themes/theme-atrovirens.js +572 -0
- package/config/themes/theme-b208.js +572 -0
- package/config/themes/theme-bd.js +572 -0
- package/config/themes/theme-bl.js +572 -0
- package/config/themes/theme-blue.js +572 -0
- package/config/themes/theme-bw.js +572 -0
- package/config/themes/theme-bwb.js +572 -0
- package/config/themes/theme-bwt.js +573 -0
- package/config/themes/theme-canglan.js +574 -0
- package/config/themes/theme-cuiwei.js +574 -0
- package/config/themes/theme-danqing.js +575 -0
- package/config/themes/theme-deep.js +572 -0
- package/config/themes/theme-default.js +378 -56
- package/config/themes/theme-eap.js +572 -0
- package/config/themes/theme-gold.js +327 -5
- package/config/themes/theme-hubei.js +574 -0
- package/config/themes/theme-lime.js +327 -5
- package/config/themes/theme-orange.js +561 -29
- package/config/themes/theme-red.js +564 -33
- package/config/themes/theme-sichuan.js +572 -0
- package/config/themes/theme-white.js +572 -0
- package/config/themes/white/var.less +692 -0
- package/config/themes/white/white.css +590 -0
- package/config/themes/white/white.css.map +1 -0
- package/config/themes/white/white.less +685 -0
- package/directives/module/draggable-menu.js +94 -0
- package/directives/module/print.js +1 -0
- package/directives/module/vue-print-nb/README.md +63 -0
- package/directives/module/vue-print-nb/print.js +94 -0
- package/directives/module/vue-print-nb/printarea.js +532 -0
- package/index.js +7 -1
- package/nstyles/common.less +197 -0
- package/nstyles/components/404.less +46 -0
- package/nstyles/components/button.less +34 -0
- package/nstyles/components/date-picker.less +41 -0
- package/nstyles/components/drawer.less +20 -0
- package/nstyles/components/dropdown.less +18 -0
- package/nstyles/components/excel-flow.less +72 -0
- package/nstyles/components/form.less +314 -0
- package/nstyles/components/index.less +23 -0
- package/nstyles/components/layout/collect.less +10 -0
- package/nstyles/components/layout/detail-view.less +107 -0
- package/nstyles/components/layout/full-screen.less +7 -0
- package/nstyles/components/layout/index.less +7 -0
- package/nstyles/components/layout/other-menu.less +142 -0
- package/nstyles/components/layout/page-view.less +101 -0
- package/nstyles/components/layout/sider-trigger.less +41 -0
- package/nstyles/components/layout/tags-nav.less +113 -0
- package/nstyles/components/modal.less +90 -0
- package/nstyles/components/n-button.less +131 -0
- package/nstyles/components/n-image-preview.less +131 -0
- package/nstyles/components/n-model/index.less +19 -0
- package/nstyles/components/n-model/report-index.less +43 -0
- package/nstyles/components/n-panel.less +41 -0
- package/nstyles/components/n-picker.less +37 -0
- package/nstyles/components/n-sign.less +17 -0
- package/nstyles/components/n-tooltip.less +10 -0
- package/nstyles/components/panel.less +31 -0
- package/nstyles/components/select.less +3 -0
- package/nstyles/components/sign.less +27 -0
- package/nstyles/components/table.less +526 -0
- package/nstyles/components/tree.less +260 -0
- package/nstyles/components/upload.less +174 -0
- package/nstyles/index.less +5 -0
- package/nstyles/reset.less +73 -0
- package/nstyles/third/ag.less +226 -0
- package/nstyles/third/icons/sort-desc.svg +1 -0
- package/nstyles/third/icons/sort-up.svg +1 -0
- package/nstyles/third/icons/sorting.svg +1 -0
- package/nstyles/third/index.less +11 -0
- package/nstyles/third/view-design.less +402 -0
- package/nstyles/variables/base.less +143 -0
- package/nstyles/variables/index.less +4 -0
- package/nstyles/variables/theme/default/button.less +7 -0
- package/nstyles/variables/theme/default/common.less +60 -0
- package/nstyles/variables/theme/default/index.less +7 -0
- package/nstyles/variables/theme/default/layout.less +40 -0
- package/nstyles/variables/theme/default/table.less +37 -0
- package/nstyles/variables/theme/default/tag.less +3 -0
- package/nstyles/variables/theme/default/upload.less +3 -0
- package/nstyles/variables/theme/index.less +13 -0
- package/nstyles/variables/theme/lsv/button.less +7 -0
- package/nstyles/variables/theme/lsv/common.less +39 -0
- package/nstyles/variables/theme/lsv/index.less +5 -0
- package/nstyles/variables/theme/lsv/layout.less +21 -0
- package/nstyles/variables/theme/lsv/table.less +20 -0
- package/nstyles/variables/theme/lsv/tag.less +3 -0
- package/nstyles/variables/theme/small/button.less +7 -0
- package/nstyles/variables/theme/small/common.less +41 -0
- package/nstyles/variables/theme/small/index.less +5 -0
- package/nstyles/variables/theme/small/layout.less +21 -0
- package/nstyles/variables/theme/small/table.less +17 -0
- package/nstyles/variables/theme/small/tag.less +3 -0
- package/package.json +28 -7
- package/plugin/index.js +12 -0
- package/plugin/module/date-format.js +30 -0
- package/plugin/module/loading.js +26 -0
- package/plugin/module/warn-handler.js +11 -0
- package/styles/image/indicator-card-header.png +0 -0
- package/styles/image/inspur.png +0 -0
- package/styles/image/lan_navigator.png +0 -0
- package/styles/image/layout-header-bg-canglan.png +0 -0
- package/styles/image/layout-header-bg-cuiwei.png +0 -0
- package/styles/image/layout-header-bg-gold.png +0 -0
- package/styles/image/lv_navigator.png +0 -0
- package/utils/ajax/abort-controller.js +70 -0
- package/utils/ajax/cancel-reason.js +25 -0
- package/utils/ajax/cancel-token.js +83 -0
- package/utils/ajax/content-type.js +30 -0
- package/utils/ajax/headers.js +16 -0
- package/utils/ajax/interceptors.js +49 -10
- package/utils/ajax/sseFetchUtil.js +127 -0
- package/utils/ajax/throttle.js +49 -0
- package/utils/assist.js +155 -27
- package/utils/base64.js +126 -0
- package/utils/blob.js +47 -0
- package/utils/context-menu.js +264 -0
- package/utils/crypto/aes.js +23 -0
- package/utils/crypto/index.js +10 -0
- package/utils/crypto/rsa.js +23 -0
- package/utils/date.js +334 -305
- package/utils/dict/built-in-dict.js +20 -0
- package/utils/dict/index.js +191 -0
- package/utils/event.js +72 -0
- package/utils/excel.js +504 -290
- package/utils/file.js +19 -0
- package/utils/form/validate.js +29 -0
- package/utils/getChild.js +87 -0
- package/utils/half-year.js +68 -0
- package/utils/index.js +37 -0
- package/utils/json.js +44 -0
- package/utils/locale/en-US.js +180 -0
- package/utils/locale/zh-CN.js +184 -0
- package/utils/lodop.js +5 -0
- package/utils/menu/generatorDynamicRouter.js +304 -0
- package/utils/menu/index.js +482 -15
- package/utils/mime_type.js +67 -0
- package/utils/modelerUtil.js +4 -1
- package/utils/n/api.js +42 -0
- package/utils/n/date.js +57 -0
- package/utils/n/index.js +10 -0
- package/utils/n/is-type.js +176 -0
- package/utils/n/number.js +144 -0
- package/utils/n/permission-cache.js +11 -0
- package/utils/n/reuqest/axiosN.js +17 -0
- package/utils/n/reuqest/content-type.js +19 -0
- package/utils/n/reuqest/interceptors.js +95 -0
- package/utils/n/reuqest/url-params.js +12 -0
- package/utils/n/storage.js +51 -0
- package/utils/n/token.js +51 -0
- package/utils/n/user-cache.js +11 -0
- package/utils/n/user.js +34 -0
- package/utils/n/uuid.js +16 -0
- package/utils/n-generator-routers.js +208 -0
- package/utils/n-router.js +205 -0
- package/utils/n-theme.js +30 -0
- package/utils/number.js +72 -15
- package/utils/oss.js +57 -0
- package/utils/platform.js +954 -31
- package/utils/quarter.js +58 -0
- package/utils/storage.js +198 -0
- package/utils/style.js +24 -0
- package/utils/theme.js +98 -3
- package/utils/transfer-queue.js +7 -0
- package/utils/transform.js +205 -0
- package/utils/type.js +102 -0
- package/utils/util.js +795 -0
- package/utils/vForm.js +349 -0
- package/utils/validator.js +181 -0
- package/config/themes/gold/default.css +0 -243
- package/config/themes/gold/default.css.map +0 -1
- package/config/themes/gold/default.less +0 -320
- package/config/themes/lime/default.css +0 -243
- package/config/themes/lime/default.css.map +0 -1
- package/config/themes/lime/default.less +0 -320
|
@@ -0,0 +1,94 @@
|
|
|
1
|
+
import {on} from '@lambo-design/shared/utils/dom'
|
|
2
|
+
import {buildMenuUri} from '@lambo-design/shared/utils/platform'
|
|
3
|
+
import config from '@lambo-design/shared/config/config'
|
|
4
|
+
|
|
5
|
+
export default {
|
|
6
|
+
inserted: (el, binding, vnode) => {
|
|
7
|
+
let triggerDom = document.querySelector(binding.value.trigger)
|
|
8
|
+
//triggerDom.style.cursor = 'move'
|
|
9
|
+
let bodyDom = document.querySelector(binding.value.body)
|
|
10
|
+
let pageX = 0
|
|
11
|
+
let pageY = 0
|
|
12
|
+
let transformX = 0
|
|
13
|
+
let transformY = 0
|
|
14
|
+
let canMove = false
|
|
15
|
+
let hasMove = false
|
|
16
|
+
const handleMousedown = e => {
|
|
17
|
+
let transform = /\(.*\)/.exec(bodyDom.style.transform)
|
|
18
|
+
if (transform) {
|
|
19
|
+
transform = transform[0].slice(1, transform[0].length - 1)
|
|
20
|
+
let splitxy = transform.split('px, ')
|
|
21
|
+
transformX = parseFloat(splitxy[0])
|
|
22
|
+
transformY = parseFloat(splitxy[1].split('px')[0])
|
|
23
|
+
}
|
|
24
|
+
pageX = e.pageX
|
|
25
|
+
pageY = e.pageY
|
|
26
|
+
if (!binding.value.hasOwnProperty('canMove') || binding.value.canMove) {
|
|
27
|
+
canMove = true
|
|
28
|
+
} else {
|
|
29
|
+
canMove = false
|
|
30
|
+
}
|
|
31
|
+
}
|
|
32
|
+
const handleMousemove = e => {
|
|
33
|
+
let xOffset = e.pageX - pageX + transformX
|
|
34
|
+
let yOffset = e.pageY - pageY + transformY
|
|
35
|
+
if (canMove) {
|
|
36
|
+
bodyDom.style.transform = `translate(${xOffset}px, ${yOffset}px)`
|
|
37
|
+
//bodyDom.style.position = `absolute`
|
|
38
|
+
//bodyDom.style.zIndex = `99999`
|
|
39
|
+
if ( Math.abs(xOffset) > parseInt(config.draggableMenuConfig.xOffset)
|
|
40
|
+
|| Math.abs(yOffset) > parseInt(config.draggableMenuConfig.yOffset) ) {
|
|
41
|
+
hasMove = true;
|
|
42
|
+
}
|
|
43
|
+
}
|
|
44
|
+
if (hasMove) {
|
|
45
|
+
if (binding.value.recover) {
|
|
46
|
+
let bodyDom = document.querySelector(binding.value.body)
|
|
47
|
+
bodyDom.style.transform = ''
|
|
48
|
+
canMove = false
|
|
49
|
+
hasMove = false
|
|
50
|
+
}
|
|
51
|
+
if (binding.value.item) {
|
|
52
|
+
let item = binding.value.item;
|
|
53
|
+
if (item.uri) {
|
|
54
|
+
canMove = false
|
|
55
|
+
hasMove = false
|
|
56
|
+
if (binding.value.recover) {
|
|
57
|
+
let bodyDom = document.querySelector(binding.value.body)
|
|
58
|
+
bodyDom.style.transform = ''
|
|
59
|
+
}
|
|
60
|
+
window.open(buildMenuUri(item))
|
|
61
|
+
}
|
|
62
|
+
}
|
|
63
|
+
}
|
|
64
|
+
}
|
|
65
|
+
const handleMouseup = e => {
|
|
66
|
+
if (binding.value.item && hasMove) {
|
|
67
|
+
let item = binding.value.item;
|
|
68
|
+
if (item.uri) {
|
|
69
|
+
canMove = false
|
|
70
|
+
hasMove = false
|
|
71
|
+
if (binding.value.recover) {
|
|
72
|
+
let bodyDom = document.querySelector(binding.value.body)
|
|
73
|
+
bodyDom.style.transform = ''
|
|
74
|
+
}
|
|
75
|
+
window.open(buildMenuUri(item))
|
|
76
|
+
}
|
|
77
|
+
}
|
|
78
|
+
canMove = false
|
|
79
|
+
hasMove = false
|
|
80
|
+
if (binding.value.recover) {
|
|
81
|
+
let bodyDom = document.querySelector(binding.value.body)
|
|
82
|
+
bodyDom.style.transform = ''
|
|
83
|
+
}
|
|
84
|
+
}
|
|
85
|
+
on(triggerDom, 'mousedown', handleMousedown)
|
|
86
|
+
on(triggerDom, 'mousemove', handleMousemove)
|
|
87
|
+
on(triggerDom, 'mouseup', handleMouseup)
|
|
88
|
+
},
|
|
89
|
+
update: (el, binding, vnode) => {
|
|
90
|
+
if (!binding.value.recover) return
|
|
91
|
+
let bodyDom = document.querySelector(binding.value.body)
|
|
92
|
+
bodyDom.style.transform = ''
|
|
93
|
+
}
|
|
94
|
+
}
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
export { default as print } from './vue-print-nb/print.js'
|
|
@@ -0,0 +1,63 @@
|
|
|
1
|
+
# vue-print-nb打印组件
|
|
2
|
+
|
|
3
|
+
这是一个简单方便的打印组件。
|
|
4
|
+
|
|
5
|
+
## 用法
|
|
6
|
+
HTML:
|
|
7
|
+
```html
|
|
8
|
+
<div id="printMe">打印我</div>
|
|
9
|
+
|
|
10
|
+
<!-- 简单用法 -->
|
|
11
|
+
<button v-print="'#printMe'">打印</button>
|
|
12
|
+
<!-- 可传参用法 -->
|
|
13
|
+
<button v-print="printObj">打印</button>
|
|
14
|
+
```
|
|
15
|
+
javascript:
|
|
16
|
+
```javascript
|
|
17
|
+
export default {
|
|
18
|
+
data() {
|
|
19
|
+
return {
|
|
20
|
+
printObj: {
|
|
21
|
+
id:'' //需要打印的元素
|
|
22
|
+
ignoreClass:'', //忽视打印的元素
|
|
23
|
+
beforeOpenCallback (vue) {
|
|
24
|
+
console.log('打开之前')
|
|
25
|
+
},
|
|
26
|
+
openCallback (vue) {
|
|
27
|
+
console.log('执行了打印')
|
|
28
|
+
},
|
|
29
|
+
closeCallback (vue) {
|
|
30
|
+
console.log('关闭了打印工具')
|
|
31
|
+
}
|
|
32
|
+
}
|
|
33
|
+
};
|
|
34
|
+
}
|
|
35
|
+
}
|
|
36
|
+
```
|
|
37
|
+
|
|
38
|
+
## v-print API
|
|
39
|
+
|
|
40
|
+
| Parame | Explain | Type | OptionalValue | DefaultValue |
|
|
41
|
+
| ------------------------- | ---------------------------------------------------------------- | ------------- | ------------------------------------------------- | ------------ |
|
|
42
|
+
| id | 打印元素的ID | String | — | — |
|
|
43
|
+
| standard | 文档类型(仅打印本地范围) | String | html5/loose/strict | html5 |
|
|
44
|
+
| extraHead | `<head></head>`在节点中添加DOM节点,并使用 `,`(仅打印本地范围) | String | — | — |
|
|
45
|
+
| extraCss | `<link>` 新的CSS样式表,并使用 `,`(仅打印本地范围) | String | — | - |
|
|
46
|
+
| popTitle | `<title></title>` 标签内容 (仅打印本地范围) | String | — | - |
|
|
47
|
+
| openCallback | 调用打印工具的成功回调函数 | Function | Returns the instance of `Vue` called at that time | - |
|
|
48
|
+
| closeCallback | 关闭打印工具成功的回调函数 | Function | Returns the instance of `Vue` called at that time | - |
|
|
49
|
+
| beforeOpenCallback | 调用打印工具前的回调函数 | Function | Returns the instance of `Vue` called at that time | - |
|
|
50
|
+
| url | 打印指定的URL。(不允许同时设置ID) | string | - | - |
|
|
51
|
+
| asyncUrl | Return URL through 'resolve()' and Vue | Function | - | - |
|
|
52
|
+
| preview | 预览工具 | Boolean | - | false |
|
|
53
|
+
| previewTitle | 预览工具标题 | String | - | '打印预览' |
|
|
54
|
+
| previewPrintBtnLabel | 预览工具按钮的名称 | String | - | '打印' |
|
|
55
|
+
| zIndex | 预览工具的CSS:索引 | String,Number | - | 20002 |
|
|
56
|
+
| previewBeforeOpenCallback | 启动预览工具前的回调函数 | Function | Returns the instance of `Vue` | - |
|
|
57
|
+
| previewOpenCallback | 完全打开预览工具后的回调函数 | Function | Returns the instance of `Vue` | - |
|
|
58
|
+
| clickMounted | 单击打印按钮的回调函数 | Function | Returns the instance of `Vue` | - |
|
|
59
|
+
|
|
60
|
+
|
|
61
|
+
源码存放在components\vue-print-nb\src\packages下,如果想修改可以参考以下文章:
|
|
62
|
+
|
|
63
|
+
[博客园](https://www.cnblogs.com/steamed-twisted-roll/p/10683680.html)
|
|
@@ -0,0 +1,94 @@
|
|
|
1
|
+
/*
|
|
2
|
+
* @Author: lee
|
|
3
|
+
* @Date: 2021-05-10 11:45:50
|
|
4
|
+
* @LastEditors: lee
|
|
5
|
+
* @LastEditTime: 2021-05-20 15:39:43
|
|
6
|
+
* @Description: file content
|
|
7
|
+
*/
|
|
8
|
+
import Print from './printarea.js'
|
|
9
|
+
/**
|
|
10
|
+
* @file 打印
|
|
11
|
+
* 指令`v-print`,默认打印整个窗口
|
|
12
|
+
* 传入参数`v-print="'#id'"` , 参数为需要打印局部的盒子标识.
|
|
13
|
+
*/
|
|
14
|
+
const addEvent = (element, type, callback) => {
|
|
15
|
+
if (element.addEventListener) {
|
|
16
|
+
element.addEventListener(type, callback, false)
|
|
17
|
+
} else if (element.attachEvent) {
|
|
18
|
+
element.attachEvent('on' + type, callback)
|
|
19
|
+
} else {
|
|
20
|
+
element['on' + type] = callback
|
|
21
|
+
}
|
|
22
|
+
}
|
|
23
|
+
export default {
|
|
24
|
+
directiveName: 'print',
|
|
25
|
+
bind(el, binding, vnode) {
|
|
26
|
+
let vue = vnode.context
|
|
27
|
+
let id = ''
|
|
28
|
+
addEvent(el, 'click', () => {
|
|
29
|
+
vue.$nextTick(() => {
|
|
30
|
+
// if (binding?.value?.clickMounted) {
|
|
31
|
+
// binding.value.clickMounted(vue)
|
|
32
|
+
// }
|
|
33
|
+
if (binding && binding.value && typeof binding.value.clickMounted === 'function') {
|
|
34
|
+
binding.value.clickMounted(vue);
|
|
35
|
+
}
|
|
36
|
+
if (typeof binding.value === 'string') {
|
|
37
|
+
// 全局打印
|
|
38
|
+
id = binding.value
|
|
39
|
+
localPrint()
|
|
40
|
+
} else if (typeof binding.value === 'object' && !!binding.value.id) {
|
|
41
|
+
// 局部打印
|
|
42
|
+
id = binding.value.id
|
|
43
|
+
let ids = id.replace(new RegExp('#', 'g'), '')
|
|
44
|
+
let elsdom = document.getElementById(ids)
|
|
45
|
+
if (!elsdom) console.log('id in Error'), (id = '')
|
|
46
|
+
localPrint()
|
|
47
|
+
// } else if (binding?.value?.preview) {
|
|
48
|
+
} else if (binding && binding.value && binding.value.preview) {
|
|
49
|
+
localPrint()
|
|
50
|
+
} else {
|
|
51
|
+
window.print()
|
|
52
|
+
return
|
|
53
|
+
}
|
|
54
|
+
})
|
|
55
|
+
})
|
|
56
|
+
|
|
57
|
+
const localPrint = () => {
|
|
58
|
+
new Print({
|
|
59
|
+
ids: id, // * 局部打印必传入id
|
|
60
|
+
vue,
|
|
61
|
+
url: binding.value.url, // 打印指定的网址,这里不能跟id共存 如果共存id的优先级会比较高
|
|
62
|
+
standard: '', // 文档类型,默认是html5,可选 html5,loose,strict
|
|
63
|
+
extraHead: binding.value.extraHead, // 附加在head标签上的额外标签,使用逗号分隔
|
|
64
|
+
extraCss: binding.value.extraCss, // 额外的css连接,多个逗号分开
|
|
65
|
+
previewTitle: binding.value.previewTitle || '打印预览', // 打印预览的标题
|
|
66
|
+
zIndex: binding.value.zIndex || 20002, // 预览窗口的z-index
|
|
67
|
+
previewPrintBtnLabel: binding.value.previewPrintBtnLabel || '打印', // 打印预览的标题
|
|
68
|
+
popTitle: binding.value.popTitle, // title的标题
|
|
69
|
+
preview: binding.value.preview || false, // 是否启动预览模式
|
|
70
|
+
asyncUrl: binding.value.asyncUrl,
|
|
71
|
+
ignoreClass: binding.value.ignoreClass, //不打印的元素
|
|
72
|
+
fontFamily: binding.value.fontFamily, // 打印字体
|
|
73
|
+
previewBeforeOpenCallback() {
|
|
74
|
+
// 预览窗口打开之前的callback
|
|
75
|
+
binding.value.previewBeforeOpenCallback && binding.value.previewBeforeOpenCallback(vue)
|
|
76
|
+
},
|
|
77
|
+
previewOpenCallback() {
|
|
78
|
+
// 预览窗口打开之后的callback
|
|
79
|
+
binding.value.previewOpenCallback && binding.value.previewOpenCallback(vue)
|
|
80
|
+
},
|
|
81
|
+
openCallback() {
|
|
82
|
+
// 调用打印之后的回调事件
|
|
83
|
+
binding.value.openCallback && binding.value.openCallback(vue)
|
|
84
|
+
},
|
|
85
|
+
closeCallback() {
|
|
86
|
+
binding.value.closeCallback && binding.value.closeCallback(vue)
|
|
87
|
+
},
|
|
88
|
+
beforeOpenCallback() {
|
|
89
|
+
binding.value.beforeOpenCallback && binding.value.beforeOpenCallback(vue)
|
|
90
|
+
},
|
|
91
|
+
})
|
|
92
|
+
}
|
|
93
|
+
},
|
|
94
|
+
}
|