n20-common-lib 1.2.2 → 1.2.5

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.
Files changed (186) hide show
  1. package/README.md +3 -27
  2. package/package.json +87 -87
  3. package/src/_qiankun/index.js +113 -113
  4. package/src/_qiankun/postMessage.js +48 -48
  5. package/src/assets/css/_coreLib.scss +35 -35
  6. package/src/assets/css/cl-anchor.scss +23 -23
  7. package/src/assets/css/cl-approve-card.scss +58 -58
  8. package/src/assets/css/cl-dialog.scss +99 -99
  9. package/src/assets/css/cl-drag-list.scss +22 -22
  10. package/src/assets/css/cl-empty.scss +10 -10
  11. package/src/assets/css/cl-expandable-pane.scss +26 -25
  12. package/src/assets/css/cl-expandable.scss +24 -23
  13. package/src/assets/css/cl-file-upload-table.scss +11 -11
  14. package/src/assets/css/cl-filter.scss +4 -4
  15. package/src/assets/css/cl-flow-step.scss +185 -185
  16. package/src/assets/css/cl-footer-box.scss +10 -10
  17. package/src/assets/css/cl-form-item.scss +339 -322
  18. package/src/assets/css/cl-general-card.scss +11 -11
  19. package/src/assets/css/cl-layout-aside.scss +88 -96
  20. package/src/assets/css/cl-layout-content.scss +16 -16
  21. package/src/assets/css/cl-layout-header.scss +73 -77
  22. package/src/assets/css/cl-layout-tabs.scss +87 -87
  23. package/src/assets/css/cl-layout.scss +97 -97
  24. package/src/assets/css/cl-login-temporary.scss +37 -37
  25. package/src/assets/css/cl-message.scss +75 -75
  26. package/src/assets/css/cl-more-tab.scss +98 -98
  27. package/src/assets/css/cl-nav-menu.scss +5 -5
  28. package/src/assets/css/cl-pagination.scss +65 -65
  29. package/src/assets/css/cl-secondary-tab.scss +39 -39
  30. package/src/assets/css/cl-showcolumn.scss +23 -23
  31. package/src/assets/css/cl-sifting.scss +51 -51
  32. package/src/assets/css/cl-statis.scss +42 -42
  33. package/src/assets/css/cl-step.scss +73 -73
  34. package/src/assets/css/cl-suspend.scss +19 -19
  35. package/src/assets/css/cl-tertiary-tab.scss +9 -9
  36. package/src/assets/css/cl-upload.scss +41 -41
  37. package/src/assets/css/cl-worn-pagination.scss +50 -50
  38. package/src/assets/css/el-button.scss +173 -169
  39. package/src/assets/css/el-table.scss +79 -79
  40. package/src/assets/css/element-variables.scss +1061 -1061
  41. package/src/assets/css/element.dev.scss +21 -21
  42. package/src/assets/css/font-icon.scss +26 -26
  43. package/src/assets/css/index.dev.scss +4 -4
  44. package/src/assets/css/index.scss +11 -11
  45. package/src/assets/css/normalize.scss +726 -723
  46. package/src/assets/css/rootvar.scss +139 -139
  47. package/src/assets/css/select.scss +25 -25
  48. package/src/assets/css/title-pop.scss +4 -4
  49. package/src/assets/getJsonc.js +50 -50
  50. package/src/assets/realUrl.js +12 -12
  51. package/src/components/Anchor/AnchorItem.vue +29 -29
  52. package/src/components/Anchor/index.vue +185 -185
  53. package/src/components/ApprovalButtons/index.vue +232 -232
  54. package/src/components/ApprovalCard/index.vue +128 -128
  55. package/src/components/ApprovalRecord/approvalImg.vue +39 -39
  56. package/src/components/ApprovalRecord/index.vue +59 -59
  57. package/src/components/Button/button-group.vue +150 -150
  58. package/src/components/Button/icon-group-button.vue +61 -61
  59. package/src/components/Button/index.vue +56 -56
  60. package/src/components/CascaderArea/index.vue +81 -0
  61. package/src/components/ContentLoading/index.vue +41 -41
  62. package/src/components/ContentNull/index.vue +19 -19
  63. package/src/components/DatePicker/index.vue +27 -27
  64. package/src/components/DatePicker/por.vue +169 -169
  65. package/src/components/Dialog/index.vue +26 -26
  66. package/src/components/Dialog/indexO.vue +116 -116
  67. package/src/components/DragList/index.vue +68 -68
  68. package/src/components/Empty/img/abnormal.svg +108 -108
  69. package/src/components/Empty/img/dispose.svg +71 -71
  70. package/src/components/Empty/img/empty.svg +57 -57
  71. package/src/components/Empty/img/general.svg +58 -58
  72. package/src/components/Empty/img/lock.svg +57 -57
  73. package/src/components/Empty/img/network.svg +59 -59
  74. package/src/components/Empty/img/relevant.svg +68 -68
  75. package/src/components/Empty/img/search.svg +72 -72
  76. package/src/components/Empty/index.vue +92 -92
  77. package/src/components/Expandable/index.vue +49 -49
  78. package/src/components/Expandable/main.vue +52 -52
  79. package/src/components/FileUploadTable/index.vue +484 -484
  80. package/src/components/Filters/index.vue +363 -358
  81. package/src/components/Filters/indexO.vue +104 -104
  82. package/src/components/FlowStep/index.vue +68 -68
  83. package/src/components/FooterBox/index.vue +21 -21
  84. package/src/components/GeneralCard/index.vue +15 -15
  85. package/src/components/InputNumber/index.vue +153 -153
  86. package/src/components/InputNumber/numberRange.vue +47 -47
  87. package/src/components/InputSearch/index.vue +75 -75
  88. package/src/components/Layout/AsideNav/index.vue +144 -144
  89. package/src/components/Layout/HeaderWrap/changePwd.vue +215 -215
  90. package/src/components/Layout/HeaderWrap/index.vue +333 -336
  91. package/src/components/Layout/HeaderWrap/noticePop.vue +300 -291
  92. package/src/components/Layout/SubContent/index.vue +131 -131
  93. package/src/components/Layout/TabsNav/index.vue +170 -170
  94. package/src/components/Layout/index.vue +529 -529
  95. package/src/components/Layout/utils.js +12 -12
  96. package/src/components/LoginTemporary/form.vue +537 -511
  97. package/src/components/LoginTemporary/index.vue +122 -122
  98. package/src/components/LoginTemporary/qrcode.vue +90 -90
  99. package/src/components/LoginTemporary/retrievePw.vue +28 -28
  100. package/src/components/LoginTemporary/utils.js +73 -73
  101. package/src/components/MicroApp/index.js +67 -67
  102. package/src/components/MicroFrame/index.vue +95 -95
  103. package/src/components/MoreTab/index.vue +232 -232
  104. package/src/components/NavMenu/index.vue +60 -60
  105. package/src/components/NstcG6Components/NstcDialog/NstcDialog.vue +184 -184
  106. package/src/components/PageLayout/page.vue +15 -15
  107. package/src/components/Pagination/index.vue +96 -96
  108. package/src/components/SecondaryTab/index.vue +58 -58
  109. package/src/components/SelectLazy/index.vue +75 -75
  110. package/src/components/SelectTree/SelectTreeLazy.vue +241 -241
  111. package/src/components/SelectTree/index.vue +205 -208
  112. package/src/components/ShowColumn/index.vue +204 -188
  113. package/src/components/Sifting/index.vue +99 -99
  114. package/src/components/Statis/index.vue +97 -97
  115. package/src/components/Statis/statisItem.vue +54 -54
  116. package/src/components/Statis/statisPopover.vue +55 -55
  117. package/src/components/Step/index.vue +38 -38
  118. package/src/components/Suspend/index.vue +72 -72
  119. package/src/components/Table/index.vue +170 -131
  120. package/src/components/Table/indexO.vue +149 -149
  121. package/src/components/Task/index.vue +26 -26
  122. package/src/components/TertiaryTab/index.vue +53 -53
  123. package/src/components/TimePicker/index.vue +28 -28
  124. package/src/components/Upload/index.vue +242 -242
  125. package/src/components/WornPagination/index.vue +73 -73
  126. package/src/directives/VClickOutside/index.js +19 -19
  127. package/src/directives/VHas/index.js +32 -27
  128. package/src/directives/VMove/index.js +42 -42
  129. package/src/directives/VTitle/index.js +56 -56
  130. package/src/directives/VTitle/tooltip.vue +21 -21
  131. package/src/index.js +218 -225
  132. package/src/plugins/CompatibleOld/index.js +57 -57
  133. package/src/plugins/Print/index.js +4 -4
  134. package/src/plugins/Print/print-js/.babelrc +12 -12
  135. package/src/plugins/Print/print-js/LICENSE +21 -21
  136. package/src/plugins/Print/print-js/README.md +98 -98
  137. package/src/plugins/Print/print-js/dist/print.css +96 -96
  138. package/src/plugins/Print/print-js/dist/print.js +990 -990
  139. package/src/plugins/Print/print-js/package.json +60 -60
  140. package/src/plugins/Print/print-js/src/index.d.ts +45 -45
  141. package/src/plugins/Print/print-js/src/index.js +10 -10
  142. package/src/plugins/Print/print-js/src/js/browser.js +33 -33
  143. package/src/plugins/Print/print-js/src/js/functions.js +103 -103
  144. package/src/plugins/Print/print-js/src/js/html.js +70 -70
  145. package/src/plugins/Print/print-js/src/js/image.js +48 -48
  146. package/src/plugins/Print/print-js/src/js/init.js +168 -168
  147. package/src/plugins/Print/print-js/src/js/json.js +109 -109
  148. package/src/plugins/Print/print-js/src/js/modal.js +62 -62
  149. package/src/plugins/Print/print-js/src/js/pdf.js +62 -62
  150. package/src/plugins/Print/print-js/src/js/print.js +102 -102
  151. package/src/plugins/Print/print-js/src/js/raw-html.js +15 -15
  152. package/src/plugins/Print/print-js/src/sass/index.scss +13 -13
  153. package/src/plugins/Print/print-js/src/sass/modules/_colors.scss +9 -9
  154. package/src/plugins/Print/print-js/src/sass/partials/_modal.scss +40 -40
  155. package/src/plugins/Print/print-js/src/sass/partials/_spinner.scss +45 -45
  156. package/src/plugins/Print/print.js +2 -2
  157. package/src/plugins/Print/print.scss +1 -1
  158. package/src/plugins/SetMenuTree/index.vue +41 -41
  159. package/src/plugins/SetMenuTree/logoIcon.vue +37 -37
  160. package/src/plugins/SetMenuTree/setmenutree.vue +427 -427
  161. package/src/plugins/SetMenuTree/utils.js +74 -74
  162. package/src/plugins/Sign/InfosecNetSignCNGAgent.min.js +2000 -2000
  163. package/src/plugins/Sign/index.js +65 -65
  164. package/src/plugins/Sign/sign.js +1 -1
  165. package/src/plugins/setTabsForSub.js +2 -2
  166. package/src/utils/auth.js +53 -53
  167. package/src/utils/axios.js +203 -203
  168. package/src/utils/downloadBlob.js +19 -19
  169. package/src/utils/forEachs.js +16 -16
  170. package/src/utils/getScrollContainer.js +43 -43
  171. package/src/utils/i18n/cn2hk.json +1270 -1270
  172. package/src/utils/i18n/index.js +54 -54
  173. package/src/utils/list2tree.js +36 -36
  174. package/src/utils/msgboxPor.js +26 -26
  175. package/src/utils/print.js +161 -161
  176. package/src/utils/relaNo.js +69 -35
  177. package/src/utils/repairElementUI.js +66 -66
  178. package/src/utils/urlToGo.js +82 -82
  179. package/style/css/normalize.scss +726 -723
  180. package/style/index.css +1 -1
  181. package/style/index.css.map +1 -1
  182. package/style/pageDemo/demo-1.vue +131 -130
  183. package/style/pageDemo/demo-2.vue +35 -35
  184. package/style/pageDemo/demo-3.vue +22 -22
  185. package/style/pageDemo/seeCode.js +20 -20
  186. package/style/server-config.jsonc +596 -663
@@ -1,73 +1,73 @@
1
- <template>
2
- <div class="flex-box flex-r">
3
- <Pagination :page-obj="pageObj" @change="pageChange" />
4
- </div>
5
- </template>
6
-
7
- <script>
8
- import Pagination from '../Pagination/index.vue'
9
- export default {
10
- name: 'WornPagination',
11
- components: {
12
- Pagination
13
- },
14
- props: {
15
- page: {
16
- type: Number,
17
- default: 1
18
- },
19
- pageSize: {
20
- type: Number,
21
- default: 20
22
- },
23
- total: {
24
- type: Number,
25
- default: 0
26
- }
27
- },
28
- data() {
29
- return {
30
- pageObj: {
31
- no: 1,
32
- size: 20,
33
- total: 0
34
- }
35
- }
36
- },
37
- watch: {
38
- page(v) {
39
- this.pageObj.no = v
40
- },
41
- pageSize(v) {
42
- this.pageObj.size = v
43
- },
44
- total(v) {
45
- this.pageObj.total = v
46
- }
47
- },
48
- created() {
49
- this.pageObj = {
50
- no: this.page,
51
- size: this.pageSize,
52
- total: this.total
53
- }
54
- },
55
- mounted() {
56
- console.warn('WornPagination组件已废弃,未来版本将剔除,请使用Pagination组件')
57
- },
58
- methods: {
59
- pageChange(v) {
60
- if (v.no !== this.page) {
61
- this.$emit('update:page', v.no)
62
- }
63
- if (v.size !== this.size) {
64
- this.$emit('update:pageSize', v.size)
65
- // 为修复bug而写的bug
66
- this.$nextTick(() => {
67
- this.$emit('update:page', v.no)
68
- })
69
- }
70
- }
71
- }
72
- }
73
- </script>
1
+ <template>
2
+ <div class="flex-box flex-r">
3
+ <Pagination :page-obj="pageObj" @change="pageChange" />
4
+ </div>
5
+ </template>
6
+
7
+ <script>
8
+ import Pagination from '../Pagination/index.vue'
9
+ export default {
10
+ name: 'WornPagination',
11
+ components: {
12
+ Pagination
13
+ },
14
+ props: {
15
+ page: {
16
+ type: Number,
17
+ default: 1
18
+ },
19
+ pageSize: {
20
+ type: Number,
21
+ default: 20
22
+ },
23
+ total: {
24
+ type: Number,
25
+ default: 0
26
+ }
27
+ },
28
+ data() {
29
+ return {
30
+ pageObj: {
31
+ no: 1,
32
+ size: 20,
33
+ total: 0
34
+ }
35
+ }
36
+ },
37
+ watch: {
38
+ page(v) {
39
+ this.pageObj.no = v
40
+ },
41
+ pageSize(v) {
42
+ this.pageObj.size = v
43
+ },
44
+ total(v) {
45
+ this.pageObj.total = v
46
+ }
47
+ },
48
+ created() {
49
+ this.pageObj = {
50
+ no: this.page,
51
+ size: this.pageSize,
52
+ total: this.total
53
+ }
54
+ },
55
+ mounted() {
56
+ console.warn('WornPagination组件已废弃,未来版本将剔除,请使用Pagination组件')
57
+ },
58
+ methods: {
59
+ pageChange(v) {
60
+ if (v.no !== this.page) {
61
+ this.$emit('update:page', v.no)
62
+ }
63
+ if (v.size !== this.size) {
64
+ this.$emit('update:pageSize', v.size)
65
+ // 为修复bug而写的bug
66
+ this.$nextTick(() => {
67
+ this.$emit('update:page', v.no)
68
+ })
69
+ }
70
+ }
71
+ }
72
+ }
73
+ </script>
@@ -1,19 +1,19 @@
1
- const directive = {}
2
-
3
- directive.install = (Vue) => {
4
- Vue.directive('click-outside', {
5
- bind: function (el, binding, node) {
6
- el.clickOutsideEvent = function (event) {
7
- if (!(el === event.target || el.contains(event.target))) {
8
- node.context[binding.expression](event)
9
- }
10
- }
11
- document.body.addEventListener('click', el.clickOutsideEvent)
12
- },
13
- unbind: function (el) {
14
- document.body.removeEventListener('click', el.clickOutsideEvent)
15
- }
16
- })
17
- }
18
-
19
- export default directive
1
+ const directive = {}
2
+
3
+ directive.install = (Vue) => {
4
+ Vue.directive('click-outside', {
5
+ bind: function (el, binding, node) {
6
+ el.clickOutsideEvent = function (event) {
7
+ if (!(el === event.target || el.contains(event.target))) {
8
+ node.context[binding.expression](event)
9
+ }
10
+ }
11
+ document.body.addEventListener('click', el.clickOutsideEvent)
12
+ },
13
+ unbind: function (el) {
14
+ document.body.removeEventListener('click', el.clickOutsideEvent)
15
+ }
16
+ })
17
+ }
18
+
19
+ export default directive
@@ -1,27 +1,32 @@
1
- import { getRela } from '../../utils/relaNo.js'
2
-
3
- export function has(vals) {
4
- let { relaNos } = getRela()
5
- if (typeof vals === 'string') {
6
- return relaNos.includes(vals)
7
- } else if (Array.isArray(vals)) {
8
- return vals.some((val) => relaNos.includes(val))
9
- }
10
- }
11
-
12
- const directive = {}
13
- directive.install = (Vue) => {
14
- Vue.prototype.$has = has
15
-
16
- Vue.filter('isHas', has)
17
-
18
- Vue.filter('noHas', (v) => !has(v))
19
-
20
- Vue.directive('has', {
21
- inserted(el, binding) {
22
- !has(binding.value) && el.parentNode.removeChild(el)
23
- }
24
- })
25
- }
26
-
27
- export default directive
1
+ import { getRela, getCltRela } from '../../utils/relaNo.js'
2
+
3
+ export function has(vals, clt) {
4
+ let relaNos = []
5
+ if (clt) {
6
+ relaNos = getCltRela(clt)
7
+ } else {
8
+ relaNos = getRela().relaNos
9
+ }
10
+ if (typeof vals === 'string') {
11
+ return relaNos.includes(vals)
12
+ } else if (Array.isArray(vals)) {
13
+ return vals.some((val) => relaNos.includes(val))
14
+ }
15
+ }
16
+
17
+ const directive = {}
18
+ directive.install = (Vue) => {
19
+ Vue.prototype.$has = has
20
+
21
+ Vue.filter('isHas', has)
22
+
23
+ Vue.filter('noHas', (v, arg) => !has(v, arg))
24
+
25
+ Vue.directive('has', {
26
+ inserted(el, binding) {
27
+ !has(binding.value, binding.arg) && el.parentNode.removeChild(el)
28
+ }
29
+ })
30
+ }
31
+
32
+ export default directive
@@ -1,42 +1,42 @@
1
- const directive = {}
2
-
3
- directive.install = (Vue) => {
4
- Vue.directive('move', {
5
- bind(el, binding) {
6
- var _this, pvrPageX, pvrPageY
7
- var mousemoveThisMove = function(evt) {
8
- var ev = evt || event
9
- ev.stopPropagation()
10
- ev.preventDefault()
11
- _this.pageXc = ev.pageX - pvrPageX
12
- _this.pageYc = ev.pageY - pvrPageY
13
- if (_this.pageXc !== 0 || _this.pageYc !== 0) {
14
- binding.value(_this, binding.arg)
15
- }
16
- pvrPageX = ev.pageX
17
- pvrPageY = ev.pageY
18
- }
19
- var mouseupThisMove = function() {
20
- document.removeEventListener('mousemove', mousemoveThisMove)
21
- document.removeEventListener('mouseup', mouseupThisMove)
22
- }
23
- el.addEventListener('mousedown', function(evt) {
24
- var ev = evt || event
25
- this.pageXc = this.pageYc = 0
26
- _this = this
27
- pvrPageX = ev.pageX
28
- pvrPageY = ev.pageY
29
- document.addEventListener('mousemove', mousemoveThisMove)
30
- document.addEventListener('mouseup', mouseupThisMove)
31
- })
32
- }
33
- /*update() {
34
- console.log('被绑定元素所在的模板更新时调用,而不论绑定值是否变化。通过比较更新前后的绑定值,可以忽略不必要的模板更新')
35
- },
36
- unbind() {
37
- console.log('只调用一次, 指令与元素解绑时调用')
38
- }*/
39
- })
40
- }
41
-
42
- export default directive
1
+ const directive = {}
2
+
3
+ directive.install = (Vue) => {
4
+ Vue.directive('move', {
5
+ bind(el, binding) {
6
+ var _this, pvrPageX, pvrPageY
7
+ var mousemoveThisMove = function(evt) {
8
+ var ev = evt || event
9
+ ev.stopPropagation()
10
+ ev.preventDefault()
11
+ _this.pageXc = ev.pageX - pvrPageX
12
+ _this.pageYc = ev.pageY - pvrPageY
13
+ if (_this.pageXc !== 0 || _this.pageYc !== 0) {
14
+ binding.value(_this, binding.arg)
15
+ }
16
+ pvrPageX = ev.pageX
17
+ pvrPageY = ev.pageY
18
+ }
19
+ var mouseupThisMove = function() {
20
+ document.removeEventListener('mousemove', mousemoveThisMove)
21
+ document.removeEventListener('mouseup', mouseupThisMove)
22
+ }
23
+ el.addEventListener('mousedown', function(evt) {
24
+ var ev = evt || event
25
+ this.pageXc = this.pageYc = 0
26
+ _this = this
27
+ pvrPageX = ev.pageX
28
+ pvrPageY = ev.pageY
29
+ document.addEventListener('mousemove', mousemoveThisMove)
30
+ document.addEventListener('mouseup', mouseupThisMove)
31
+ })
32
+ }
33
+ /*update() {
34
+ console.log('被绑定元素所在的模板更新时调用,而不论绑定值是否变化。通过比较更新前后的绑定值,可以忽略不必要的模板更新')
35
+ },
36
+ unbind() {
37
+ console.log('只调用一次, 指令与元素解绑时调用')
38
+ }*/
39
+ })
40
+ }
41
+
42
+ export default directive
@@ -1,56 +1,56 @@
1
- import Tooltip from './tooltip.vue'
2
-
3
- function tipShow(el, tip) {
4
- if (el.$tooltipTitle) {
5
- if (!el.$tooltipTitleOverflow || el.clientWidth < el.scrollWidth) {
6
- tip.title = el.$tooltipTitle
7
- tip.$refs['title-pop'].referenceElm = el
8
- tip.$refs['title-pop'].doDestroy()
9
- tip.$nextTick(() => {
10
- tip.visible = true
11
- })
12
- }
13
- }
14
- }
15
- function tipHide(el, tip) {
16
- tip.visible = false
17
- }
18
-
19
- const TitleDirective = {}
20
- TitleDirective.install = (Vue) => {
21
- if (Vue.prototype.$isServer) return
22
-
23
- const tooltip = new (Vue.extend(Tooltip))({
24
- el: document.createElement('div'),
25
- data: {
26
- title: '',
27
- visible: false
28
- }
29
- })
30
- document.querySelector('body').appendChild(tooltip.$el)
31
-
32
- Vue.directive('title', {
33
- bind: function (el, binding, vnode) {
34
- if (vnode.data && vnode.data.attrs) {
35
- el.$tooltipTitleOverflow = vnode.data.attrs['show-overflow-tooltip']
36
- }
37
- el.$tooltipTitle = binding.value
38
- el.$tooltipShow = () => tipShow(el, tooltip)
39
- el.$tooltipHide = () => tipHide(el, tooltip)
40
- el.addEventListener('mouseenter', el.$tooltipShow)
41
- el.addEventListener('mouseleave', el.$tooltipHide)
42
- },
43
- update: function (el, binding) {
44
- if (binding.value !== binding.oldValue) {
45
- el.$tooltipTitle = binding.value
46
- }
47
- },
48
- unbind: function (el, binding) {
49
- el.$tooltipHide()
50
- el.removeEventListener('mouseenter', el.$tooltipShow)
51
- el.removeEventListener('mouseleave', el.$tooltipHide)
52
- }
53
- })
54
- }
55
-
56
- export default TitleDirective
1
+ import Tooltip from './tooltip.vue'
2
+
3
+ function tipShow(el, tip) {
4
+ if (el.$tooltipTitle) {
5
+ if (!el.$tooltipTitleOverflow || el.clientWidth < el.scrollWidth) {
6
+ tip.title = el.$tooltipTitle
7
+ tip.$refs['title-pop'].referenceElm = el
8
+ tip.$refs['title-pop'].doDestroy()
9
+ tip.$nextTick(() => {
10
+ tip.visible = true
11
+ })
12
+ }
13
+ }
14
+ }
15
+ function tipHide(el, tip) {
16
+ tip.visible = false
17
+ }
18
+
19
+ const TitleDirective = {}
20
+ TitleDirective.install = (Vue) => {
21
+ if (Vue.prototype.$isServer) return
22
+
23
+ const tooltip = new (Vue.extend(Tooltip))({
24
+ el: document.createElement('div'),
25
+ data: {
26
+ title: '',
27
+ visible: false
28
+ }
29
+ })
30
+ document.querySelector('body').appendChild(tooltip.$el)
31
+
32
+ Vue.directive('title', {
33
+ bind: function (el, binding, vnode) {
34
+ if (vnode.data && vnode.data.attrs) {
35
+ el.$tooltipTitleOverflow = vnode.data.attrs['show-overflow-tooltip']
36
+ }
37
+ el.$tooltipTitle = binding.value
38
+ el.$tooltipShow = () => tipShow(el, tooltip)
39
+ el.$tooltipHide = () => tipHide(el, tooltip)
40
+ el.addEventListener('mouseenter', el.$tooltipShow)
41
+ el.addEventListener('mouseleave', el.$tooltipHide)
42
+ },
43
+ update: function (el, binding) {
44
+ if (binding.value !== binding.oldValue) {
45
+ el.$tooltipTitle = binding.value
46
+ }
47
+ },
48
+ unbind: function (el, binding) {
49
+ el.$tooltipHide()
50
+ el.removeEventListener('mouseenter', el.$tooltipShow)
51
+ el.removeEventListener('mouseleave', el.$tooltipHide)
52
+ }
53
+ })
54
+ }
55
+
56
+ export default TitleDirective
@@ -1,21 +1,21 @@
1
- <template>
2
- <el-popover
3
- ref="title-pop"
4
- v-model="visible"
5
- trigger="manual"
6
- popper-class="n20-title-pop"
7
- placement="top"
8
- >{{ title }}</el-popover
9
- >
10
- </template>
11
-
12
- <script>
13
- export default {
14
- data() {
15
- return {
16
- title: '',
17
- visible: false
18
- }
19
- }
20
- }
21
- </script>
1
+ <template>
2
+ <el-popover
3
+ ref="title-pop"
4
+ v-model="visible"
5
+ trigger="manual"
6
+ popper-class="n20-title-pop"
7
+ placement="top"
8
+ >{{ title }}</el-popover
9
+ >
10
+ </template>
11
+
12
+ <script>
13
+ export default {
14
+ data() {
15
+ return {
16
+ title: '',
17
+ visible: false
18
+ }
19
+ }
20
+ }
21
+ </script>