bri-components 1.0.5 → 1.1.0

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 (98) hide show
  1. package/lib/0.bri-components.min.js +1 -1
  2. package/lib/1.bri-components.min.js +1 -1
  3. package/lib/2.bri-components.min.js +1 -1
  4. package/lib/3.bri-components.min.js +1 -1
  5. package/lib/4.bri-components.min.js +1 -1
  6. package/lib/5.bri-components.min.js +1 -1
  7. package/lib/6.bri-components.min.js +1 -1
  8. package/lib/7.bri-components.min.js +1 -0
  9. package/lib/8.bri-components.min.js +1 -0
  10. package/lib/9.bri-components.min.js +1 -0
  11. package/lib/bri-components.min.js +13 -5
  12. package/lib/styles/bundle.css +0 -2
  13. package/package.json +2 -1
  14. package/src/components/controls/base/BriLabels.vue +117 -0
  15. package/src/components/controls/base/DshCascader.vue +23 -38
  16. package/src/components/controls/base/DshCascaderMultiple.vue +1 -1
  17. package/src/components/controls/base/DshCheckbox.vue +14 -4
  18. package/src/components/controls/base/DshCoordinates.vue +5 -9
  19. package/src/components/controls/base/DshDate.vue +10 -34
  20. package/src/components/controls/base/DshDivider.vue +1 -1
  21. package/src/components/controls/base/DshEditor.vue +52 -44
  22. package/src/components/controls/base/DshInput.vue +18 -45
  23. package/src/components/controls/base/DshLabels.vue +8 -4
  24. package/src/components/controls/base/DshNumber/DshNumber.vue +6 -20
  25. package/src/components/controls/base/DshNumberange.vue +1 -1
  26. package/src/components/controls/base/DshPackage.vue +7 -1
  27. package/src/components/controls/base/DshSelect.vue +15 -5
  28. package/src/components/controls/base/DshSwitch.vue +2 -6
  29. package/src/components/controls/base/YSerialNumber.vue +0 -1
  30. package/src/components/controls/base/ZUpload/index.vue +16 -10
  31. package/src/components/controls/base/ZUpload/upload-list.vue +17 -12
  32. package/src/components/controls/base/ZUpload/uploadMixin.js +1 -5
  33. package/src/components/controls/base/controlShow.vue +52 -0
  34. package/src/components/controls/base/textMultiple/DshTextMultiple.vue +1 -1
  35. package/src/components/controls/controlMap.js +4 -0
  36. package/src/components/controls/controlMixin.js +18 -12
  37. package/src/components/controls/senior/cascaderTable.vue +188 -0
  38. package/src/components/controls/senior/flatTable.vue +131 -0
  39. package/src/components/form/DshForm.vue +0 -3
  40. package/src/components/list/BriFlatTable.vue +430 -0
  41. package/src/components/list/BriTable.vue +184 -0
  42. package/src/components/list/DshBox/DshPanel.vue +4 -9
  43. package/src/components/list/DshBox/DshTable.vue +29 -39
  44. package/src/components/list/DshCascaderTable.vue +6 -11
  45. package/src/components/other/BriTransfer.vue +71 -0
  46. package/src/components/small/BriButton.vue +65 -0
  47. package/src/components/small/BriTree.vue +42 -0
  48. package/src/components/small/Ctooltip.vue +1 -1
  49. package/src/components/small/DshButtons.vue +12 -42
  50. package/src/components/unit/DshFormItem.vue +0 -2
  51. package/src/components/unit/DshUnit.vue +1 -1
  52. package/src/components/unit/unitMixin.js +4 -1
  53. package/src/index.js +24 -4
  54. package/src/styles/bundle.css +0 -2
  55. package/src/styles/common/common.less +2 -2
  56. package/src/styles/common/control.less +53 -0
  57. package/src/styles/common/index.less +1 -0
  58. package/src/styles/components/controls/BriLabels.less +23 -0
  59. package/src/styles/components/controls/DshCascader.less +3 -3
  60. package/src/styles/components/controls/DshCheckbox.less +1 -1
  61. package/src/styles/components/controls/DshCoordinates.less +3 -3
  62. package/src/styles/components/controls/DshDate.less +54 -0
  63. package/src/styles/components/controls/DshDaterange.less +1 -1
  64. package/src/styles/components/controls/DshEditor.less +27 -9
  65. package/src/styles/components/controls/DshInput.less +5 -5
  66. package/src/styles/components/controls/DshLabels.less +1 -1
  67. package/src/styles/components/controls/DshSelect.less +46 -30
  68. package/src/styles/components/controls/ZUpload.less +82 -91
  69. package/src/styles/components/controls/cascaderTable.less +33 -0
  70. package/src/styles/components/controls/controlShow.less +12 -0
  71. package/src/styles/components/controls/flatTable.less +33 -0
  72. package/src/styles/components/form/DshAdvSearchForm.less +6 -6
  73. package/src/styles/components/index.less +10 -0
  74. package/src/styles/components/list/BriFlatTable.less +8 -0
  75. package/src/styles/components/list/BriTable.less +155 -0
  76. package/src/styles/components/list/DshFlatTable.less +3 -8
  77. package/src/styles/components/list/evTable.less +1 -1
  78. package/src/styles/components/other/BriTransfer.less +65 -0
  79. package/src/styles/components/other/DshEditPanel.less +2 -2
  80. package/src/styles/components/other/DshMenuNav.less +5 -5
  81. package/src/styles/components/other/ZGantt.less +5 -5
  82. package/src/styles/components/small/BriButton.less +259 -0
  83. package/src/styles/components/small/BriTree.less +57 -0
  84. package/src/styles/components/small/Ctooltip.less +14 -0
  85. package/src/styles/components/small/DshButtons.less +1 -1
  86. package/src/styles/components/small/DshControlDefine.less +2 -2
  87. package/src/styles/components/small/DshDropdown.less +1 -1
  88. package/src/styles/components/small/DshPage.less +1 -1
  89. package/src/styles/components/small/DshTabs.less +2 -2
  90. package/src/styles/components/unit/DshFormItem.less +5 -6
  91. package/src/styles/index.less +1 -5
  92. package/src/styles/plugin/easytable.less +22 -0
  93. package/src/styles/plugin/index.less +2 -0
  94. package/src/styles/plugin/iview.less +33 -0
  95. package/src/styles/variables.less +71 -88
  96. package/src/utils/table.js +72 -978
  97. package/src/styles/define.less +0 -374
  98. package/src/styles/view_reset.less +0 -452
@@ -1,5 +1,3 @@
1
- @import "view-design/dist/styles/iview.css";
2
-
3
1
  @import "codemirror/lib/codemirror.css";
4
2
  @import "codemirror/theme/cobalt.css";
5
3
  @import "codemirror/theme/base16-light.css";
package/package.json CHANGED
@@ -1,6 +1,6 @@
1
1
  {
2
2
  "name": "bri-components",
3
- "version": "1.0.5",
3
+ "version": "1.1.0",
4
4
  "author": "dengshanghui",
5
5
  "description": "a component lib for vue project",
6
6
  "main": "src/index.js",
@@ -39,6 +39,7 @@
39
39
  "viewerjs": "^1.10.2",
40
40
  "vue-codemirror": "^4.0.6",
41
41
  "vue-cropperjs": "^4.1.0",
42
+ "vue-easytable": "^2.21.9",
42
43
  "vuedraggable": "^2.24.1",
43
44
  "wangeditor": "^4.7.5"
44
45
  },
@@ -0,0 +1,117 @@
1
+ <!-- 动态标签 -->
2
+ <template>
3
+ <div class="BriLabels">
4
+ <Dropdown
5
+ class="BriLabels-dropdown"
6
+ trigger="custom"
7
+ placement="bottom-start"
8
+ transfer
9
+ :visible="listVisible"
10
+ @on-clickoutside="clickInput"
11
+ >
12
+ <Input
13
+ class="BriLabels-dropdown-input"
14
+ :value="showValStr"
15
+ :suffix="inputIcon"
16
+ readonly
17
+ @click.native="clickInput"
18
+ >
19
+ </Input>
20
+ <template #list>
21
+ <DropdownMenu>
22
+ <DropdownItem
23
+ v-for="item in listData"
24
+ :key="item._key"
25
+ :class="{
26
+ 'BriLabels-dropdown-item':true,
27
+ 'BriLabels-dropdown-item-active':!!val.find(i=>i._key == item._key)
28
+ }"
29
+ >
30
+ {{item.name}}
31
+ </DropdownItem>
32
+ </DropdownMenu>
33
+ </template>
34
+ </Dropdown>
35
+ </div>
36
+ </template>
37
+
38
+ <script>
39
+ import controlMixin from "../controlMixin.js";
40
+
41
+ export default {
42
+ name: "BriLabels",
43
+ mixins: [controlMixin],
44
+ data () {
45
+ return {
46
+ listData: [],
47
+ listVisible: false,
48
+ inputIcon: "ios-arrow-down"
49
+ };
50
+ },
51
+ computed: {
52
+ selfPropsObj () {
53
+ return {
54
+ ...this.propsObj,
55
+ ...this.commonDealPropsObj
56
+ };
57
+ },
58
+ modKey () {
59
+ return this.propsObj.modKey;
60
+ },
61
+ val: {
62
+ get () {
63
+ return this.value[this.propsObj._key] || [];
64
+ },
65
+ set (val) {
66
+ this.value[this.propsObj._key] = val;
67
+ }
68
+ },
69
+ showValStr () {
70
+ let valArr = this.val && this.val.map(item => item.name);
71
+ return valArr && valArr.join("、");
72
+ }
73
+ },
74
+ created () {
75
+ this.init();
76
+ },
77
+ methods: {
78
+ init () {
79
+ this.getListData();
80
+ },
81
+ getListData () {
82
+ this.$https({
83
+ url: {
84
+ module: "sheet",
85
+ name: "memberAll"
86
+ },
87
+ params: {
88
+ search: {
89
+ entityKey: this.entityKey, // 当前工作表关联的数据表Key
90
+ modKey: this.modKey,
91
+ name: this.curVal,
92
+ fieldKey: this.selfPropsObj._key === "_default" ? this.value._key : (this.selfPropsObj.__realKey__ || this.selfPropsObj._key), // 当前字段Key
93
+ labelType: this.selfPropsObj._labelType
94
+ },
95
+ pagination: {
96
+ page: 1,
97
+ pagesize: 999
98
+ }
99
+ },
100
+ callback: data => {
101
+ this.listData = data.list;
102
+ }
103
+ });
104
+ },
105
+ clickInput () {
106
+ this.listVisible = !this.listVisible;
107
+ if (this.listVisible) {
108
+ this.inputIcon = "ios-arrow-up";
109
+ } else {
110
+ this.inputIcon = "ios-arrow-down";
111
+ }
112
+ }
113
+ },
114
+ watch: {
115
+ }
116
+ };
117
+ </script>
@@ -1,7 +1,7 @@
1
1
  <template>
2
- <div :class="`DshCascader ycFormItem control-${mode}`">
3
- <!-- 编辑模式 -->
4
- <template v-if="finalCanEdit">
2
+ <div :class="`DshCascader`">
3
+ <!-- 编辑和disabled模式 -->
4
+ <template v-if="finalCanEdit || $isDisabled(canEdit, selfPropsObj)">
5
5
  <!-- 多选 多选模式的filterable必须是false,不然出bug -->
6
6
  <template v-if="useMultiple === true">
7
7
  <Cascader
@@ -86,17 +86,16 @@
86
86
  v-else
87
87
  style="width: 100%;"
88
88
  :class="{
89
- 'DshCascader-readonly': $isReadonly(canEdit, selfPropsObj),
90
89
  'DshCascader-disabled': $isDisabled(canEdit, selfPropsObj)
91
90
  }"
92
91
  :value="value[controlKey]"
93
92
  :data="renderCascaderData"
94
93
  :placeholder="selfPropsObj._placeholder"
95
- :disabled="!finalCanEdit"
94
+ :disabled="$isDisabled(canEdit, selfPropsObj)"
96
95
  :change-on-select="selfPropsObj._changeOnSelect"
97
96
  :clearable="selfPropsObj._clearable"
98
97
  :size="selfPropsObj._size"
99
- :filterable="selfPropsObj._filterable"
98
+ :filterable="selfPropsObj._filterable && !$isDisabled(canEdit, selfPropsObj)"
100
99
  :transfer="selfPropsObj._transfer"
101
100
  :transfer-class-name="selfPropsObj._transferClassName"
102
101
  :load-data="loadData"
@@ -107,29 +106,13 @@
107
106
  </template>
108
107
  </template>
109
108
 
110
- <!-- 查看 和 编辑下无编辑权限 -->
111
- <Ctooltip
109
+ <!-- 查看模式 -->
110
+ <control-show
112
111
  v-else
113
- placement="top"
114
- :transfer="true"
115
- maxWidth="200"
116
- :content="showVal"
117
- :class="commonClass"
118
- >
119
- <span
120
- v-if="showVal"
121
- class="dsh-ellipsis hb-show-text"
122
- :class="`control-${mode}-text`"
123
- >
124
- {{ showVal }}
125
- </span>
126
- <div
127
- v-else
128
- class="hb-nodata-text dsh-ellipsis"
129
- >
130
- <span>暂无内容</span>
131
- </div>
132
- </Ctooltip>
112
+ :showVal="showVal"
113
+ :propsObj="selfPropsObj"
114
+ :isUnit="isUnit"
115
+ ></control-show>
133
116
  </div>
134
117
  </template>
135
118
 
@@ -303,16 +286,18 @@
303
286
 
304
287
  /* ----------- 单选使用 ---------- */
305
288
  clickInput () {
306
- if (
307
- ["cascader"].includes(this.selfPropsObj._type) &&
308
- this.selfPropsObj._filterable === true &&
309
- this.renderDataFlag === true &&
310
- this.clickInputFlag === true
311
- ) {
312
- this.clickInputFlag = false; // 这个处理其实觉大概率没必要,有没有不受影响
313
- setTimeout(() => {
314
- this.renderDataFlag = false;
315
- }, 0);
289
+ if (this.finalCanEdit) {
290
+ if (
291
+ ["cascader"].includes(this.selfPropsObj._type) &&
292
+ this.selfPropsObj._filterable === true &&
293
+ this.renderDataFlag === true &&
294
+ this.clickInputFlag === true
295
+ ) {
296
+ this.clickInputFlag = false; // 这个处理其实觉大概率没必要,有没有不受影响
297
+ setTimeout(() => {
298
+ this.renderDataFlag = false;
299
+ }, 0);
300
+ }
316
301
  }
317
302
  },
318
303
  // 展开和关闭弹窗时触发
@@ -1,5 +1,5 @@
1
1
  <template>
2
- <div class="DshCascaderMultiple ycFormItem">
2
+ <div class="DshCascaderMultiple">
3
3
  <Cascader
4
4
  class="DshCascaderMultiple-control"
5
5
  v-model="cascaderVal"
@@ -1,6 +1,6 @@
1
1
  <template>
2
2
  <div
3
- :class="`DshCheckbox ycFormItem control-${mode}`"
3
+ class="DshCheckbox"
4
4
  ref="dshCheckboxRef"
5
5
  >
6
6
  <template v-if="canEdit">
@@ -87,11 +87,13 @@
87
87
  :transfer="true"
88
88
  maxWidth="200"
89
89
  :content="showVal"
90
- :class="commonClass"
91
90
  >
92
91
  <div
93
92
  v-if="showVal"
94
93
  class="DshCheckbox-value-wrapper"
94
+ :style="{
95
+ justifyContent: flatShowAlign
96
+ }"
95
97
  >
96
98
  <span
97
99
  v-for="col in colData"
@@ -105,9 +107,14 @@
105
107
  </div>
106
108
  <div
107
109
  v-else
108
- class="hb-nodata-text dsh-ellipsis"
110
+ class="control-nodata-text dsh-ellipsis"
109
111
  >
110
- <span>暂无内容</span>
112
+ <template v-if="isUnit">
113
+ -
114
+ </template>
115
+ <template v-else>
116
+ 暂无内容
117
+ </template>
111
118
  </div>
112
119
  </Ctooltip>
113
120
 
@@ -169,6 +176,9 @@
169
176
  // 选项数据
170
177
  colData () {
171
178
  return this.listData.filter(item => (this.value[this.controlKey] || []).includes(item._key));
179
+ },
180
+ flatShowAlign () {
181
+ return !this.propsObj._align || this.propsObj._align == "left" || !this.isUnit ? "flex-start" : this.propsObj._align == "right" ? "flex-end" : "center";
172
182
  }
173
183
  },
174
184
  created () {
@@ -1,11 +1,10 @@
1
1
  <template>
2
- <div :class="`DshCoordinates ycFormItem control-${mode}`">
2
+ <div class="DshCoordinates">
3
3
  <Ctooltip
4
4
  placement="top"
5
5
  :transfer="true"
6
6
  maxWidth="200"
7
- :content="showVal"
8
- :class="commonClass"
7
+ :content="currentVal"
9
8
  >
10
9
  <!-- 编辑模式 -->
11
10
  <div
@@ -38,11 +37,8 @@
38
37
  </div>
39
38
 
40
39
  <!-- 查看模式 -->
41
- <span
42
- v-else
43
- :class="[`dsh-ellipsis control-${mode}-text`, showVal ? 'hb-show-text' : 'hb-nodata-text']"
44
- >
45
- <span>{{ showVal || '暂无内容' }}</span>
40
+ <span v-else :class="commonClass">
41
+ {{ showText }}
46
42
  </span>
47
43
  </Ctooltip>
48
44
 
@@ -177,7 +173,7 @@
177
173
  this.value[this.controlKey] = val;
178
174
  }
179
175
  },
180
- showVal () {
176
+ currentVal () {
181
177
  return this.curVal && this.curVal.name;
182
178
  },
183
179
  curLnglat: {
@@ -1,20 +1,19 @@
1
1
  <template>
2
2
  <div
3
3
  v-if="show"
4
- :class="`DshDate ycFormItem control-${mode}`"
4
+ class="DshDate"
5
5
  >
6
- <template v-if="finalCanEdit">
6
+ <template v-if="finalCanEdit || $isDisabled(canEdit, selfPropsObj)">
7
7
  <template v-if="['time'].includes(subType)">
8
8
  <TimePicker
9
9
  style="width: 100%;"
10
10
  :class="{
11
- 'DshDate-time-readonly': $isReadonly(canEdit, selfPropsObj),
12
11
  'DshDate-time-disabled': $isDisabled(canEdit, selfPropsObj)
13
12
  }"
14
13
  v-model="val"
15
14
  :type="subType"
16
15
  :placeholder="selfPropsObj._placeholder"
17
- :disabled="!finalCanEdit"
16
+ :disabled="$isDisabled(canEdit, selfPropsObj)"
18
17
  :clearable="selfPropsObj._clearable"
19
18
  :transfer="selfPropsObj._transfer"
20
19
  @on-change="change"
@@ -25,13 +24,12 @@
25
24
  <DatePicker
26
25
  style="width: 100%;"
27
26
  :class="{
28
- 'DshDate-date-readonly': $isReadonly(canEdit, selfPropsObj),
29
27
  'DshDate-date-disabled': $isDisabled(canEdit, selfPropsObj)
30
28
  }"
31
29
  v-model="val"
32
30
  :type="subType"
33
31
  :placeholder="selfPropsObj._placeholder"
34
- :disabled="!finalCanEdit"
32
+ :disabled="$isDisabled(canEdit, selfPropsObj)"
35
33
  :clearable="selfPropsObj._clearable"
36
34
  :options="options"
37
35
  :transfer="selfPropsObj._transfer"
@@ -40,29 +38,13 @@
40
38
  </template>
41
39
  </template>
42
40
 
43
- <Ctooltip
41
+ <!-- 查看模式 -->
42
+ <control-show
44
43
  v-else
45
- placement="top"
46
- :transfer="true"
47
- maxWidth="200"
48
- :content="showVal"
49
- :class="commonClass"
50
- >
51
- <span
52
- v-if="showVal"
53
- class="dsh-ellipsis hb-show-text"
54
- :class="`control-${mode}-text`"
55
- >
56
- {{ showVal }}
57
- </span>
58
- <span
59
- v-else
60
- class="hb-nodata-text dsh-ellipsis"
61
- :class="`control-${mode}-text`"
62
- >
63
- <span>暂无内容</span>
64
- </span>
65
- </Ctooltip>
44
+ :showVal="showVal"
45
+ :propsObj="selfPropsObj"
46
+ :isUnit="isUnit"
47
+ ></control-show>
66
48
  </div>
67
49
  </template>
68
50
 
@@ -140,9 +122,3 @@
140
122
  }
141
123
  };
142
124
  </script>
143
-
144
- <style lang="less">
145
- .DshDate {
146
- width: 100%;
147
- }
148
- </style>
@@ -1,5 +1,5 @@
1
1
  <template>
2
- <div :class="`DshDivider control-${mode}`">
2
+ <div class="DshDivider">
3
3
  <!-- <div class="DshDivider-divider-cli">
4
4
  <p>{{ propsObj._name }}</p>
5
5
  </div> -->
@@ -1,49 +1,44 @@
1
1
  <template>
2
2
  <div class="DshEditor">
3
3
  <!-- 有值、无值 可编辑 -->
4
- <div
5
- v-if="(value[propsObj._key] && finalCanEdit) || (!value[propsObj._key] && finalCanEdit)"
6
- class="DshEditor-show"
7
- :class="commonClass"
8
- v-show="showType === 'show'"
9
- v-html="value[propsObj._key]"
10
- @click="handleEdit"
11
- ></div>
4
+ <div v-if="isUnit" class="DshEditor-unit">
5
+ <span class="DshEditor-unit-text">
6
+ {{ unitVal }}
7
+ </span>
8
+ </div>
9
+
10
+ <template v-else-if="finalCanEdit">
11
+ <div class="DshEditor-show DshEditor-edit"
12
+ :class="value[controlKey] ? '': 'DshEditor-edit-placeholder'"
13
+ v-show="showType === 'show'"
14
+ v-html="editVal"
15
+ @click="handleEdit"
16
+ ></div>
17
+ <div v-show="showType=='edit'" class="DshEditor-wrap">
18
+ <div
19
+ ref="toolbar"
20
+ class="toolbar"
21
+ ></div>
22
+ <div
23
+ ref="editor"
24
+ class="text"
25
+ ></div>
26
+
27
+ <dsh-buttons
28
+ class="DshEditor-wrap-btn"
29
+ :list="$getOperationList(['save'])"
30
+ @click="$dispatchEvent($event)"
31
+ ></dsh-buttons>
32
+ </div>
33
+ </template>
12
34
 
13
- <div
14
- v-else-if="value[propsObj._key] && !finalCanEdit"
15
- class="DshEditor-show hb-show-text"
16
- :class="commonClass"
35
+ <div v-else
36
+ class="DshEditor-show"
37
+ :class="$isDisabled(canEdit, selfPropsObj) ? 'DshEditor-show-disabled' : value[controlKey] ? '' : 'DshEditor-show-nodata'"
17
38
  v-show="showType === 'show'"
18
- v-html="value[propsObj._key]"
19
- @click="handleEdit"
39
+ v-html="showVal"
20
40
  ></div>
21
41
 
22
- <div
23
- v-else
24
- class="DshEditor-show hb-nodata-text"
25
- >
26
- <span>暂无内容</span>
27
- </div>
28
- <div
29
- v-show="showType=='edit'"
30
- class="DshEditor-wrap"
31
- >
32
- <div
33
- ref="toolbar"
34
- class="toolbar"
35
- ></div>
36
- <div
37
- ref="editor"
38
- class="text"
39
- ></div>
40
-
41
- <dsh-buttons
42
- class="DshEditor-wrap-btn"
43
- :list="$getOperationList(['save'])"
44
- @click="$dispatchEvent($event)"
45
- ></dsh-buttons>
46
- </div>
47
42
  </div>
48
43
  </template>
49
44
 
@@ -72,10 +67,25 @@
72
67
  };
73
68
  },
74
69
  computed: {
70
+ selfPropsObj () {
71
+ return {
72
+ ...this.propsObj,
73
+ ...this.commonDealPropsObj
74
+ };
75
+ },
76
+ unitVal () {
77
+ return this.value[this.controlKey] ? "富文本" : "-";
78
+ },
79
+ showVal () {
80
+ return this.value[this.controlKey] || "暂无内容";
81
+ },
82
+ editVal () {
83
+ return this.value[this.controlKey] || this.selfPropsObj._placeholder;
84
+ }
75
85
  },
76
86
  created () {},
77
87
  mounted () {
78
- this.initEditor();
88
+ this.finalCanEdit && this.initEditor();
79
89
  },
80
90
  methods: {
81
91
  initEditor () {
@@ -142,10 +152,8 @@
142
152
  this.editor = editor;
143
153
  },
144
154
  handleEdit () {
145
- if (this.finalCanEdit) {
146
- this.editor.txt.html(this.value[this.propsObj._key]);
147
- this.showType = "edit";
148
- }
155
+ this.editor.txt.html(this.value[this.propsObj._key]);
156
+ this.showType = "edit";
149
157
  },
150
158
  save () {
151
159
  this.showType = "show";
@@ -1,9 +1,8 @@
1
1
  <template>
2
- <div :class="`DshInput ycFormItem control-${mode}`">
2
+ <div :class="`DshInput`">
3
3
  <Input
4
- v-if="finalCanEdit"
4
+ v-if="finalCanEdit || $isDisabled(canEdit, selfPropsObj)"
5
5
  :class="{
6
- 'DshInput-readonly': $isReadonly(canEdit, selfPropsObj),
7
6
  'DshInput-disabled': $isDisabled(canEdit, selfPropsObj)
8
7
  }"
9
8
  v-model="value[controlKey]"
@@ -24,50 +23,23 @@
24
23
  @on-blur="onBlur"
25
24
  @on-clear="onClear"
26
25
  >
27
- <span
28
- v-if="selfPropsObj._prepend"
29
- slot="prepend"
30
- >{{ selfPropsObj._prepend }}</span>
31
- <span
32
- v-if="selfPropsObj._append"
33
- slot="append"
34
- >{{ selfPropsObj._append }}</span>
26
+ <span
27
+ v-if="selfPropsObj._prepend"
28
+ slot="prepend"
29
+ >{{ selfPropsObj._prepend }}</span>
30
+ <span
31
+ v-if="selfPropsObj._append"
32
+ slot="append"
33
+ >{{ selfPropsObj._append }}</span>
35
34
  </Input>
36
35
 
37
- <!-- 查看 和 编辑下无编辑权限 -->
38
- <p
39
- v-else-if="subType === 'textarea'"
40
- :class="[commonClass, showVal ? 'hb-show-text' : 'hb-nodata-text', 'DshInput-textarea-show']"
41
- >{{ showVal || '暂无内容' }}</p>
42
-
43
- <Ctooltip
36
+ <!-- 查看模式 -->
37
+ <control-show
44
38
  v-else
45
- placement="top"
46
- :transfer="true"
47
- maxWidth="200"
48
- :content="showVal"
49
- :class="{
50
- 'DshInput-notAllowed': mode === 'default',
51
- 'DshInput-ellipsis-readonly': mode === 'default' && $isReadonly(canEdit, selfPropsObj),
52
- 'DshInput-ellipsis-disabled': mode === 'default' && $isDisabled(canEdit, selfPropsObj),
53
- [commonClass]: true
54
- }"
55
- >
56
- <span
57
- v-if="showVal"
58
- class="dsh-ellipsis hb-show-text"
59
- :class="`control-${mode}-text`"
60
- >
61
- {{ showVal }}
62
- </span>
63
- <span
64
- v-else
65
- class="hb-nodata-text dsh-ellipsis"
66
- :class="`control-${mode}-text`"
67
- >
68
- <span>暂无内容</span>
69
- </span>
70
- </Ctooltip>
39
+ :showVal="showVal"
40
+ :propsObj="selfPropsObj"
41
+ :isUnit="isUnit"
42
+ ></control-show>
71
43
  </div>
72
44
  </template>
73
45
 
@@ -107,7 +79,8 @@
107
79
  return this.value[this.controlKey] || "";
108
80
  }
109
81
  },
110
- created () {},
82
+ created () {
83
+ },
111
84
  methods: {
112
85
  onSearch (...params) {
113
86
  this.$emit("search", ...params);
@@ -106,9 +106,8 @@
106
106
  <div
107
107
  v-else
108
108
  :class="{'DshLabels-view':true,
109
- 'DshLabels-view-readonly': mode === 'default' && $isReadonly(canEdit, selfPropsObj),
110
- 'DshLabels-view-disabled': mode === 'default' && $isDisabled(canEdit, selfPropsObj),
111
- [commonClass]:true
109
+ 'DshLabels-view-readonly': $isReadonly(canEdit, selfPropsObj),
110
+ 'DshLabels-view-disabled': $isDisabled(canEdit, selfPropsObj),
112
111
  }"
113
112
  >
114
113
  <template v-if="val.length">
@@ -126,7 +125,12 @@
126
125
  v-else
127
126
  class="DshLabels-view-nodata"
128
127
  >
129
- <span>暂无数据</span>
128
+ <template v-if="isUnit">
129
+ -
130
+ </template>
131
+ <template v-else>
132
+ 暂无内容
133
+ </template>
130
134
  </div>
131
135
  </div>
132
136
  </div>