dlt-for-react 1.0.5 → 1.0.7
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/README.md
CHANGED
|
@@ -6,13 +6,16 @@ npm publish
|
|
|
6
6
|
|
|
7
7
|
## 前端dlt-for-react依赖包版本更新记录
|
|
8
8
|
|
|
9
|
-
##### 当前最新版本:1.0.
|
|
9
|
+
##### 当前最新版本:1.0.7
|
|
10
10
|
|
|
11
11
|
##### 安装依赖
|
|
12
12
|
> cnpm install dlt-for-react --save
|
|
13
13
|
|
|
14
14
|
##### 版本修改记录
|
|
15
|
-
|
|
15
|
+
#### V1.0.7—2023年10月12日
|
|
16
|
+
1. 提交HqLsrySelector临时人员选择器组件
|
|
17
|
+
#### V1.0.6—2023年10月9日
|
|
18
|
+
1. 修改createUuid参数bug
|
|
16
19
|
#### V1.0.4—2023年9月28日
|
|
17
20
|
1. 补充KyBtnBox、KyCheckBox、KyCheckButton、KyCollapse、KyContainerFrame、KyEditableTable、KyEmpty、KyExcel、KyIcon、KyMore、KyTable及KyTitle组件
|
|
18
21
|
#### V1.0.3—2023年9月28日
|
|
@@ -0,0 +1,343 @@
|
|
|
1
|
+
'use strict';
|
|
2
|
+
|
|
3
|
+
Object.defineProperty(exports, "__esModule", {
|
|
4
|
+
value: true
|
|
5
|
+
});
|
|
6
|
+
exports.HqLsrySelector = undefined;
|
|
7
|
+
|
|
8
|
+
var _NHSelector2 = require('xgui-for-react/lib/components/NHSelector');
|
|
9
|
+
|
|
10
|
+
var _NHSelector3 = _interopRequireDefault(_NHSelector2);
|
|
11
|
+
|
|
12
|
+
var _tooltip = require('antd/lib/tooltip');
|
|
13
|
+
|
|
14
|
+
var _tooltip2 = _interopRequireDefault(_tooltip);
|
|
15
|
+
|
|
16
|
+
var _getPrototypeOf = require('babel-runtime/core-js/object/get-prototype-of');
|
|
17
|
+
|
|
18
|
+
var _getPrototypeOf2 = _interopRequireDefault(_getPrototypeOf);
|
|
19
|
+
|
|
20
|
+
var _classCallCheck2 = require('babel-runtime/helpers/classCallCheck');
|
|
21
|
+
|
|
22
|
+
var _classCallCheck3 = _interopRequireDefault(_classCallCheck2);
|
|
23
|
+
|
|
24
|
+
var _createClass2 = require('babel-runtime/helpers/createClass');
|
|
25
|
+
|
|
26
|
+
var _createClass3 = _interopRequireDefault(_createClass2);
|
|
27
|
+
|
|
28
|
+
var _possibleConstructorReturn2 = require('babel-runtime/helpers/possibleConstructorReturn');
|
|
29
|
+
|
|
30
|
+
var _possibleConstructorReturn3 = _interopRequireDefault(_possibleConstructorReturn2);
|
|
31
|
+
|
|
32
|
+
var _inherits2 = require('babel-runtime/helpers/inherits');
|
|
33
|
+
|
|
34
|
+
var _inherits3 = _interopRequireDefault(_inherits2);
|
|
35
|
+
|
|
36
|
+
require('antd/lib/tooltip/style');
|
|
37
|
+
|
|
38
|
+
var _react = require('react');
|
|
39
|
+
|
|
40
|
+
var _react2 = _interopRequireDefault(_react);
|
|
41
|
+
|
|
42
|
+
function _interopRequireDefault(obj) { return obj && obj.__esModule ? obj : { default: obj }; }
|
|
43
|
+
|
|
44
|
+
/**
|
|
45
|
+
* 人员选择器
|
|
46
|
+
* 用法如下:(记得先引入组件)
|
|
47
|
+
|
|
48
|
+
// 人员分类择器显示
|
|
49
|
+
this.HqLsrySelector.show([id]);
|
|
50
|
+
|
|
51
|
+
<HqLsrySelector
|
|
52
|
+
label={'选择人员分类'}
|
|
53
|
+
isSinger={false}
|
|
54
|
+
ref={el => this.HqLsrySelector = el}
|
|
55
|
+
onSelect={this.onSelector}
|
|
56
|
+
/>
|
|
57
|
+
|
|
58
|
+
// 人员分类择器选中事件
|
|
59
|
+
onSelector = (selectKeys, selectValue) => {
|
|
60
|
+
if (selectValue && selectValue.length > 0) {
|
|
61
|
+
let params = this.state.params;
|
|
62
|
+
const obj = selectValue[0];
|
|
63
|
+
params.gh = obj.GH;
|
|
64
|
+
params.xm = obj.XM;
|
|
65
|
+
this.setState({ params });
|
|
66
|
+
} else {
|
|
67
|
+
message.warn("请选择人员分类信息!")
|
|
68
|
+
}
|
|
69
|
+
}
|
|
70
|
+
|
|
71
|
+
*/
|
|
72
|
+
var HqLsrySelector = exports.HqLsrySelector = function (_React$Component) {
|
|
73
|
+
(0, _inherits3.default)(HqLsrySelector, _React$Component);
|
|
74
|
+
|
|
75
|
+
function HqLsrySelector(props) {
|
|
76
|
+
(0, _classCallCheck3.default)(this, HqLsrySelector);
|
|
77
|
+
|
|
78
|
+
var _this = (0, _possibleConstructorReturn3.default)(this, (HqLsrySelector.__proto__ || (0, _getPrototypeOf2.default)(HqLsrySelector)).call(this, props));
|
|
79
|
+
|
|
80
|
+
_this.show = function (initValues) {
|
|
81
|
+
_this.HqLsrySelector.show(initValues);
|
|
82
|
+
};
|
|
83
|
+
|
|
84
|
+
_this.singerBottomShowRender = function (record) {
|
|
85
|
+
var gh = record.GH || record.gh;
|
|
86
|
+
var xm = record.XM || record.xm;
|
|
87
|
+
var dwmc = record.DWMC || record.dwmc;
|
|
88
|
+
var ksmc = record.KSMC || record.ksmc;
|
|
89
|
+
return _react2.default.createElement(
|
|
90
|
+
'span',
|
|
91
|
+
null,
|
|
92
|
+
_react2.default.createElement(
|
|
93
|
+
'font',
|
|
94
|
+
null,
|
|
95
|
+
'(',
|
|
96
|
+
ksmc || dwmc,
|
|
97
|
+
')-'
|
|
98
|
+
),
|
|
99
|
+
_react2.default.createElement(
|
|
100
|
+
'font',
|
|
101
|
+
{ style: { fontSize: "14px", color: "red" } },
|
|
102
|
+
xm,
|
|
103
|
+
'(',
|
|
104
|
+
gh,
|
|
105
|
+
')'
|
|
106
|
+
)
|
|
107
|
+
);
|
|
108
|
+
};
|
|
109
|
+
|
|
110
|
+
_this.state = {};
|
|
111
|
+
return _this;
|
|
112
|
+
}
|
|
113
|
+
|
|
114
|
+
/**
|
|
115
|
+
* 单选时底部结果渲染
|
|
116
|
+
* @param record 选中的那条结果数据
|
|
117
|
+
*/
|
|
118
|
+
|
|
119
|
+
|
|
120
|
+
(0, _createClass3.default)(HqLsrySelector, [{
|
|
121
|
+
key: 'render',
|
|
122
|
+
value: function render() {
|
|
123
|
+
var _this2 = this;
|
|
124
|
+
|
|
125
|
+
var columns = [{
|
|
126
|
+
key: 'gh',
|
|
127
|
+
title: '工号',
|
|
128
|
+
width: '80',
|
|
129
|
+
ellipsis: true,
|
|
130
|
+
render: function render(text, record) {
|
|
131
|
+
return record.GH || record.gh;
|
|
132
|
+
}
|
|
133
|
+
}, {
|
|
134
|
+
key: 'xm',
|
|
135
|
+
title: '姓名',
|
|
136
|
+
minWidth: '100',
|
|
137
|
+
sorted: false,
|
|
138
|
+
ellipsis: true,
|
|
139
|
+
render: function render(text, record) {
|
|
140
|
+
return record.XM || record.xm;
|
|
141
|
+
}
|
|
142
|
+
}, {
|
|
143
|
+
key: 'xb',
|
|
144
|
+
title: '性别',
|
|
145
|
+
minWidth: '80',
|
|
146
|
+
sorted: false,
|
|
147
|
+
ellipsis: true,
|
|
148
|
+
render: function render(text, record) {
|
|
149
|
+
return record.XB || record.xb;
|
|
150
|
+
}
|
|
151
|
+
},
|
|
152
|
+
// {
|
|
153
|
+
// key: 'title',
|
|
154
|
+
// title: '职称',
|
|
155
|
+
// minWidth: '100',
|
|
156
|
+
// sorted: false,
|
|
157
|
+
// render: (text, record, index) => {
|
|
158
|
+
// let temp = record.TITLE || record.title;
|
|
159
|
+
// if (temp && temp.length > 6) {
|
|
160
|
+
// return (<font><Tooltip title={temp}>{temp.substring(0, 6)}...</Tooltip ></font>)
|
|
161
|
+
// } else {
|
|
162
|
+
// return (<font>{temp}</font>)
|
|
163
|
+
// }
|
|
164
|
+
// },
|
|
165
|
+
// },
|
|
166
|
+
// {
|
|
167
|
+
// key: 'discipline',
|
|
168
|
+
// title: '一级学科',
|
|
169
|
+
// minWidth: '120',
|
|
170
|
+
// sorted: false,
|
|
171
|
+
// ellipsis: true,
|
|
172
|
+
// render: (text, record, index) => {
|
|
173
|
+
// let temp = record.DISCIPLINE || record.discipline;
|
|
174
|
+
// if (temp && temp.length > 13) {
|
|
175
|
+
// return (<font><Tooltip title={temp}>{temp.substring(0, 13)}...</Tooltip ></font>)
|
|
176
|
+
// } else {
|
|
177
|
+
// return (<font>{temp}</font>)
|
|
178
|
+
// }
|
|
179
|
+
// },
|
|
180
|
+
// },
|
|
181
|
+
// {
|
|
182
|
+
// key: 'degree',
|
|
183
|
+
// title: '最后学位',
|
|
184
|
+
// minWidth: '120',
|
|
185
|
+
// sorted: false,
|
|
186
|
+
// render: (text, record, index) => {
|
|
187
|
+
// let temp = record.DEGREE || record.degree;
|
|
188
|
+
// if (temp && temp.length > 13) {
|
|
189
|
+
// return (<font><Tooltip title={temp}>{temp.substring(0, 13)}...</Tooltip ></font>)
|
|
190
|
+
// } else {
|
|
191
|
+
// return (<font>{temp}</font>)
|
|
192
|
+
// }
|
|
193
|
+
// },
|
|
194
|
+
// },
|
|
195
|
+
{
|
|
196
|
+
key: 'ksmc',
|
|
197
|
+
title: '所属科室',
|
|
198
|
+
minWidth: '140',
|
|
199
|
+
sorted: false,
|
|
200
|
+
render: function render(text, record, index) {
|
|
201
|
+
var temp = record.KSMC || record.ksmc;
|
|
202
|
+
if (temp && temp.length > 13) {
|
|
203
|
+
return _react2.default.createElement(
|
|
204
|
+
'font',
|
|
205
|
+
null,
|
|
206
|
+
_react2.default.createElement(
|
|
207
|
+
_tooltip2.default,
|
|
208
|
+
{ title: temp },
|
|
209
|
+
temp.substring(0, 13),
|
|
210
|
+
'...'
|
|
211
|
+
)
|
|
212
|
+
);
|
|
213
|
+
} else {
|
|
214
|
+
return _react2.default.createElement(
|
|
215
|
+
'font',
|
|
216
|
+
null,
|
|
217
|
+
temp
|
|
218
|
+
);
|
|
219
|
+
}
|
|
220
|
+
}
|
|
221
|
+
}, {
|
|
222
|
+
key: 'dwmc',
|
|
223
|
+
title: '所属单位',
|
|
224
|
+
minWidth: '140',
|
|
225
|
+
sorted: false,
|
|
226
|
+
render: function render(text, record, index) {
|
|
227
|
+
var temp = record.DWMC || record.dwmc;
|
|
228
|
+
if (temp && temp.length > 13) {
|
|
229
|
+
return _react2.default.createElement(
|
|
230
|
+
'font',
|
|
231
|
+
null,
|
|
232
|
+
_react2.default.createElement(
|
|
233
|
+
_tooltip2.default,
|
|
234
|
+
{ title: temp },
|
|
235
|
+
temp.substring(0, 13),
|
|
236
|
+
'...'
|
|
237
|
+
)
|
|
238
|
+
);
|
|
239
|
+
} else {
|
|
240
|
+
return _react2.default.createElement(
|
|
241
|
+
'font',
|
|
242
|
+
null,
|
|
243
|
+
temp
|
|
244
|
+
);
|
|
245
|
+
}
|
|
246
|
+
}
|
|
247
|
+
}];
|
|
248
|
+
var _props = this.props,
|
|
249
|
+
mode = _props.mode,
|
|
250
|
+
treeWidth = _props.treeWidth,
|
|
251
|
+
tableWidth = _props.tableWidth,
|
|
252
|
+
resultWidth = _props.resultWidth,
|
|
253
|
+
_props$title = _props.title,
|
|
254
|
+
title = _props$title === undefined ? '后勤人员选择器' : _props$title,
|
|
255
|
+
_props$keyField = _props.keyField,
|
|
256
|
+
keyField = _props$keyField === undefined ? 'GH' : _props$keyField,
|
|
257
|
+
_props$titleField = _props.titleField,
|
|
258
|
+
titleField = _props$titleField === undefined ? 'XM' : _props$titleField,
|
|
259
|
+
_props$searchField = _props.searchField,
|
|
260
|
+
searchField = _props$searchField === undefined ? 'gh,xm,xb,ksmc,dwmc' : _props$searchField,
|
|
261
|
+
_props$searchWidth = _props.searchWidth,
|
|
262
|
+
searchWidth = _props$searchWidth === undefined ? '300' : _props$searchWidth,
|
|
263
|
+
_props$placeholder = _props.placeholder,
|
|
264
|
+
placeholder = _props$placeholder === undefined ? '职工号/姓名/性别/所属科室/所属单位' : _props$placeholder,
|
|
265
|
+
sign = _props.sign,
|
|
266
|
+
treeUrl = _props.treeUrl,
|
|
267
|
+
tableUrl = _props.tableUrl,
|
|
268
|
+
_props$baseUrl = _props.baseUrl,
|
|
269
|
+
baseUrl = _props$baseUrl === undefined ? 'api/hq-xtgl' : _props$baseUrl;
|
|
270
|
+
|
|
271
|
+
if (!sign && !treeUrl && !tableUrl) {
|
|
272
|
+
//没有设置方案说明此时使用默认的数据源调用
|
|
273
|
+
sign = 'ly_hq_selector_lsry';
|
|
274
|
+
treeUrl = baseUrl + '/proData/selector/tree/list'; //默认的路径,当没有设置方案的时候,就使用此路径查询数据
|
|
275
|
+
tableUrl = baseUrl + '/proData/selector/table/list'; //默认的路径,当没有设置方案的时候,就使用此路径查询数据
|
|
276
|
+
}
|
|
277
|
+
return _react2.default.createElement(
|
|
278
|
+
'div',
|
|
279
|
+
null,
|
|
280
|
+
_react2.default.createElement(_NHSelector3.default, {
|
|
281
|
+
ref: function ref(form) {
|
|
282
|
+
_this2.HqLsrySelector = form;
|
|
283
|
+
},
|
|
284
|
+
title: title,
|
|
285
|
+
mode: mode,
|
|
286
|
+
sign: sign,
|
|
287
|
+
treeUrl: treeUrl,
|
|
288
|
+
tableUrl: tableUrl,
|
|
289
|
+
treeWidth: treeWidth,
|
|
290
|
+
tableWidth: tableWidth,
|
|
291
|
+
resultWidth: resultWidth,
|
|
292
|
+
height: 500,
|
|
293
|
+
isSinger: this.props.isSinger,
|
|
294
|
+
columns: columns,
|
|
295
|
+
keyField: keyField,
|
|
296
|
+
titleField: titleField,
|
|
297
|
+
searchField: searchField,
|
|
298
|
+
searchWidth: searchWidth,
|
|
299
|
+
placeholder: placeholder,
|
|
300
|
+
onSelect: this.props.onSelect,
|
|
301
|
+
tableParams: this.props.tableParams,
|
|
302
|
+
tableSqlParams: this.props.tableSqlParams,
|
|
303
|
+
treeParams: this.props.treeParams,
|
|
304
|
+
treeSqlParams: this.props.treeSqlParams,
|
|
305
|
+
treeShowIcon: true,
|
|
306
|
+
singerBottomShowFlag: true,
|
|
307
|
+
singerBottomShowRender: this.singerBottomShowRender,
|
|
308
|
+
baseUrl: this.props.baseUrl,
|
|
309
|
+
rangeFilter: this.props.rangeFilter,
|
|
310
|
+
rangeFilterList: this.props.rangeFilterList
|
|
311
|
+
})
|
|
312
|
+
);
|
|
313
|
+
}
|
|
314
|
+
}]);
|
|
315
|
+
return HqLsrySelector;
|
|
316
|
+
}(_react2.default.Component);
|
|
317
|
+
|
|
318
|
+
HqLsrySelector.defaultProps = {
|
|
319
|
+
mode: "treeAndTable",
|
|
320
|
+
treeWidth: 250,
|
|
321
|
+
tableWidth: 600,
|
|
322
|
+
resultWidth: 150,
|
|
323
|
+
sign: undefined,
|
|
324
|
+
treeUrl: undefined,
|
|
325
|
+
tableUrl: undefined,
|
|
326
|
+
title: undefined,
|
|
327
|
+
keyField: undefined,
|
|
328
|
+
titleField: undefined,
|
|
329
|
+
searchField: undefined,
|
|
330
|
+
searchWidth: undefined,
|
|
331
|
+
placeholder: undefined,
|
|
332
|
+
isSinger: false, //是否是单选,true表示是单选,false表示是多选,默认为false
|
|
333
|
+
onSelect: function onSelect() {}, //选中结果的时候的回调方法
|
|
334
|
+
treeParams: {}, //树数据过滤参数
|
|
335
|
+
treeSqlParams: undefined, //树的sql语句内的参数
|
|
336
|
+
tableParams: {}, //列表数据过滤参数
|
|
337
|
+
tableSqlParams: undefined, //列表的sql语句内的参数
|
|
338
|
+
baseUrl: undefined, //请求路径的前缀,可通过改参数控制访问的后端服务,如果不设置,则会去访问当前前端服务对应的后端服务,例如:api/sm-bpm-expansion
|
|
339
|
+
rangeFilter: undefined, //是否开启职务范围过滤
|
|
340
|
+
rangeFilterList: undefined // 自定义职务过滤列表
|
|
341
|
+
};
|
|
342
|
+
|
|
343
|
+
exports.default = HqLsrySelector;
|
package/lib/index.js
CHANGED
|
@@ -220,6 +220,15 @@ Object.defineProperty(exports, 'KyBtnBox', {
|
|
|
220
220
|
}
|
|
221
221
|
});
|
|
222
222
|
|
|
223
|
+
var _HqLsrySelector = require('./components/HqSelector/HqLsrySelector');
|
|
224
|
+
|
|
225
|
+
Object.defineProperty(exports, 'HqLsrySelector', {
|
|
226
|
+
enumerable: true,
|
|
227
|
+
get: function get() {
|
|
228
|
+
return _interopRequireDefault(_HqLsrySelector).default;
|
|
229
|
+
}
|
|
230
|
+
});
|
|
231
|
+
|
|
223
232
|
var _getSize = require('./utils/getSize.js');
|
|
224
233
|
|
|
225
234
|
Object.defineProperty(exports, 'getSize', {
|
package/lib/utils/NHCore.js
CHANGED
|
@@ -61,6 +61,9 @@ function SuitHeight(node) {
|
|
|
61
61
|
|
|
62
62
|
//获取UUID
|
|
63
63
|
var createUuid = exports.createUuid = function createUuid() {
|
|
64
|
+
var len = arguments.length > 0 && arguments[0] !== undefined ? arguments[0] : 32;
|
|
65
|
+
var radix = arguments.length > 1 && arguments[1] !== undefined ? arguments[1] : 16;
|
|
66
|
+
|
|
64
67
|
var chars = '0123456789abcdefghijklmnopqrstuvwxyz'.split('');
|
|
65
68
|
var uuid = [],
|
|
66
69
|
i;
|
|
@@ -267,7 +270,7 @@ var validateCode = exports.validateCode = function () {
|
|
|
267
270
|
}, _callee, undefined, [[0, 12]]);
|
|
268
271
|
}));
|
|
269
272
|
|
|
270
|
-
return function validateCode(
|
|
273
|
+
return function validateCode(_x3, _x4, _x5) {
|
|
271
274
|
return _ref.apply(this, arguments);
|
|
272
275
|
};
|
|
273
276
|
}();
|
package/lib/utils/createUuid.js
CHANGED
|
@@ -5,6 +5,9 @@ Object.defineProperty(exports, "__esModule", {
|
|
|
5
5
|
});
|
|
6
6
|
//获取UUID
|
|
7
7
|
var createUuid = function createUuid() {
|
|
8
|
+
var len = arguments.length > 0 && arguments[0] !== undefined ? arguments[0] : 32;
|
|
9
|
+
var radix = arguments.length > 1 && arguments[1] !== undefined ? arguments[1] : 16;
|
|
10
|
+
|
|
8
11
|
var chars = '0123456789abcdefghijklmnopqrstuvwxyz'.split('');
|
|
9
12
|
var uuid = [],
|
|
10
13
|
i;
|
package/package.json
CHANGED
|
@@ -1,127 +0,0 @@
|
|
|
1
|
-
'use strict';
|
|
2
|
-
|
|
3
|
-
Object.defineProperty(exports, "__esModule", {
|
|
4
|
-
value: true
|
|
5
|
-
});
|
|
6
|
-
|
|
7
|
-
var _extends2 = require('babel-runtime/helpers/extends');
|
|
8
|
-
|
|
9
|
-
var _extends3 = _interopRequireDefault(_extends2);
|
|
10
|
-
|
|
11
|
-
var _getPrototypeOf = require('babel-runtime/core-js/object/get-prototype-of');
|
|
12
|
-
|
|
13
|
-
var _getPrototypeOf2 = _interopRequireDefault(_getPrototypeOf);
|
|
14
|
-
|
|
15
|
-
var _classCallCheck2 = require('babel-runtime/helpers/classCallCheck');
|
|
16
|
-
|
|
17
|
-
var _classCallCheck3 = _interopRequireDefault(_classCallCheck2);
|
|
18
|
-
|
|
19
|
-
var _createClass2 = require('babel-runtime/helpers/createClass');
|
|
20
|
-
|
|
21
|
-
var _createClass3 = _interopRequireDefault(_createClass2);
|
|
22
|
-
|
|
23
|
-
var _possibleConstructorReturn2 = require('babel-runtime/helpers/possibleConstructorReturn');
|
|
24
|
-
|
|
25
|
-
var _possibleConstructorReturn3 = _interopRequireDefault(_possibleConstructorReturn2);
|
|
26
|
-
|
|
27
|
-
var _inherits2 = require('babel-runtime/helpers/inherits');
|
|
28
|
-
|
|
29
|
-
var _inherits3 = _interopRequireDefault(_inherits2);
|
|
30
|
-
|
|
31
|
-
var _react = require('react');
|
|
32
|
-
|
|
33
|
-
var _react2 = _interopRequireDefault(_react);
|
|
34
|
-
|
|
35
|
-
var _propTypes = require('prop-types');
|
|
36
|
-
|
|
37
|
-
var _propTypes2 = _interopRequireDefault(_propTypes);
|
|
38
|
-
|
|
39
|
-
function _interopRequireDefault(obj) { return obj && obj.__esModule ? obj : { default: obj }; }
|
|
40
|
-
|
|
41
|
-
var DragM = function (_React$Component) {
|
|
42
|
-
(0, _inherits3.default)(DragM, _React$Component);
|
|
43
|
-
|
|
44
|
-
function DragM() {
|
|
45
|
-
var _ref;
|
|
46
|
-
|
|
47
|
-
var _temp, _this, _ret;
|
|
48
|
-
|
|
49
|
-
(0, _classCallCheck3.default)(this, DragM);
|
|
50
|
-
|
|
51
|
-
for (var _len = arguments.length, args = Array(_len), _key = 0; _key < _len; _key++) {
|
|
52
|
-
args[_key] = arguments[_key];
|
|
53
|
-
}
|
|
54
|
-
|
|
55
|
-
return _ret = (_temp = (_this = (0, _possibleConstructorReturn3.default)(this, (_ref = DragM.__proto__ || (0, _getPrototypeOf2.default)(DragM)).call.apply(_ref, [this].concat(args))), _this), _this.position = {
|
|
56
|
-
startX: 0,
|
|
57
|
-
startY: 0,
|
|
58
|
-
dx: 0,
|
|
59
|
-
dy: 0,
|
|
60
|
-
tx: 0,
|
|
61
|
-
ty: 0
|
|
62
|
-
}, _this.start = function (event) {
|
|
63
|
-
if (event.button != 0) {
|
|
64
|
-
//只允许左键,右键问题在于不选择conextmenu就不会触发mouseup事件
|
|
65
|
-
return;
|
|
66
|
-
}
|
|
67
|
-
document.addEventListener('mousemove', _this.docMove);
|
|
68
|
-
_this.position.startX = event.pageX - _this.position.dx;
|
|
69
|
-
_this.position.startY = event.pageY - _this.position.dy;
|
|
70
|
-
}, _this.docMove = function (event) {
|
|
71
|
-
var tx = event.pageX - _this.position.startX;
|
|
72
|
-
var ty = event.pageY - _this.position.startY;
|
|
73
|
-
var transformStr = 'translate(' + tx + 'px,' + ty + 'px)';
|
|
74
|
-
_this.props.updateTransform(transformStr, tx, ty, _this.tdom);
|
|
75
|
-
_this.position.dx = tx;
|
|
76
|
-
_this.position.dy = ty;
|
|
77
|
-
}, _this.docMouseUp = function (event) {
|
|
78
|
-
document.removeEventListener('mousemove', _this.docMove);
|
|
79
|
-
}, _temp), (0, _possibleConstructorReturn3.default)(_this, _ret);
|
|
80
|
-
}
|
|
81
|
-
|
|
82
|
-
(0, _createClass3.default)(DragM, [{
|
|
83
|
-
key: 'componentDidMount',
|
|
84
|
-
value: function componentDidMount() {
|
|
85
|
-
this.tdom.addEventListener('mousedown', this.start);
|
|
86
|
-
//用document移除对mousemove事件的监听
|
|
87
|
-
document.addEventListener('mouseup', this.docMouseUp);
|
|
88
|
-
}
|
|
89
|
-
}, {
|
|
90
|
-
key: 'componentWillUnmount',
|
|
91
|
-
value: function componentWillUnmount() {
|
|
92
|
-
this.tdom.removeEventListener('mousedown', this.start);
|
|
93
|
-
document.removeEventListener('mouseup', this.docMouseUp);
|
|
94
|
-
document.removeEventListener('mousemove', this.docMove);
|
|
95
|
-
}
|
|
96
|
-
}, {
|
|
97
|
-
key: 'render',
|
|
98
|
-
value: function render() {
|
|
99
|
-
var _this2 = this;
|
|
100
|
-
|
|
101
|
-
var children = this.props.children;
|
|
102
|
-
|
|
103
|
-
var newStyle = (0, _extends3.default)({}, children.props.style, {
|
|
104
|
-
cursor: 'move',
|
|
105
|
-
userSelect: 'none'
|
|
106
|
-
});
|
|
107
|
-
return _react2.default.cloneElement(_react2.default.Children.only(children), {
|
|
108
|
-
ref: function ref(tdom) {
|
|
109
|
-
return _this2.tdom = tdom;
|
|
110
|
-
},
|
|
111
|
-
style: newStyle
|
|
112
|
-
});
|
|
113
|
-
}
|
|
114
|
-
}]);
|
|
115
|
-
return DragM;
|
|
116
|
-
}(_react2.default.Component);
|
|
117
|
-
|
|
118
|
-
DragM.propTypes = {
|
|
119
|
-
children: _propTypes2.default.element.isRequired
|
|
120
|
-
};
|
|
121
|
-
DragM.defaultProps = {
|
|
122
|
-
//默认是移动children dom,覆盖该方法,可以把tranform行为同步给外部
|
|
123
|
-
updateTransform: function updateTransform(transformStr, tx, ty, tdom) {
|
|
124
|
-
tdom.style.transform = transformStr;
|
|
125
|
-
}
|
|
126
|
-
};
|
|
127
|
-
exports.default = DragM;
|