@chaoswise/ui 2.6.8 → 2.6.9

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.
@@ -36,7 +36,7 @@ function _iterableToArrayLimit(r, l) { var t = null == r ? null : "undefined" !=
36
36
  function _arrayWithHoles(r) { if (Array.isArray(r)) return r; }
37
37
  function _objectWithoutProperties(e, t) { if (null == e) return {}; var o, r, i = _objectWithoutPropertiesLoose(e, t); if (Object.getOwnPropertySymbols) { var s = Object.getOwnPropertySymbols(e); for (r = 0; r < s.length; r++) o = s[r], t.includes(o) || {}.propertyIsEnumerable.call(e, o) && (i[o] = e[o]); } return i; }
38
38
  function _objectWithoutPropertiesLoose(r, e) { if (null == r) return {}; var t = {}; for (var n in r) if ({}.hasOwnProperty.call(r, n)) { if (e.includes(n)) continue; t[n] = r[n]; } return t; }
39
- import React, { useState, useEffect, Fragment, forwardRef, useMemo } from "react";
39
+ import React, { useState, useEffect, Fragment, forwardRef, useMemo, useCallback } from "react";
40
40
  import { filterTreeByName, filterTree, filterTreeByNameTable, filterObj, getNotSelectKeys, getKeysAndTitle, getBottomKey, renderLeafNodetree, renderRelationNode, createTitle } from "./utils";
41
41
  import classnames from "classnames";
42
42
  import Drag from "./Drag";
@@ -257,21 +257,6 @@ var QuickTransfer = /*#__PURE__*/forwardRef(function (props, ref) {
257
257
  return !i.disabled;
258
258
  }));
259
259
  setCheckValue(finalCheckValue);
260
- var newData = [];
261
- var listCheckedKeys_ = [];
262
- dataSource.forEach(function (item, index) {
263
- if (isMath(item.title, saveSearchValueLeft)) {
264
- newData.push(dataSource[index]);
265
- }
266
- });
267
- listCheckedKeys_ = newData.filter(function (item) {
268
- return finalCheckValue.find(function (i) {
269
- return i.key == item.key;
270
- });
271
- }).map(function (item) {
272
- return item.key;
273
- });
274
- setListCheckedStyle(listCheckedKeys_, newData);
275
260
  }
276
261
  //回显table
277
262
  if (type === "table") {
@@ -287,19 +272,51 @@ var QuickTransfer = /*#__PURE__*/forwardRef(function (props, ref) {
287
272
  }
288
273
  }
289
274
  }
290
- }, [targetKeys, dataSource, saveSearchValueLeft]);
291
- //触发前端自定义搜索
275
+ }, [targetKeys, dataSource]);
292
276
  useEffect(function () {
293
- if (searchValueLeft !== undefined) {
294
- handleSearch(searchValueLeft);
277
+ // 左侧受控值绑定
278
+ if (searchValueLeft !== undefined && searchValueLeft !== saveSearchValueLeft) {
295
279
  // 初始化搜索结果
296
280
  setSaveSearchValueLeft(searchValueLeft);
297
281
  }
298
- if (searchValueRight !== undefined) {
282
+ }, [searchValueLeft, saveSearchValueLeft]);
283
+ useEffect(function () {
284
+ // 右侧受控值绑定
285
+ if (searchValueRight !== undefined && searchValueRight !== saveSearchValueRight) {
299
286
  // 初始化搜索结果
300
287
  setSaveSearchValueRight(searchValueRight);
301
288
  }
302
- }, [searchValueLeft, searchValueRight]);
289
+ }, [searchValueRight, saveSearchValueRight]);
290
+
291
+ // 左侧搜索框输入触发
292
+ var handleSearch = useCallback(function (searchValue) {
293
+ var newData = [];
294
+ var listCheckedKeys_ = [];
295
+ if (type === "list") {
296
+ dataSource.forEach(function (item, index) {
297
+ if (isMath(item.title, searchValue)) {
298
+ newData.push(dataSource[index]);
299
+ }
300
+ });
301
+ listCheckedKeys_ = newData.filter(function (item) {
302
+ return checkValue.find(function (i) {
303
+ return i.key == item.key;
304
+ });
305
+ }).map(function (item) {
306
+ return item.key;
307
+ });
308
+ setData(newData);
309
+ setListCheckedStyle(listCheckedKeys_, newData);
310
+ }
311
+ if (type === "table") {
312
+ newData = filterTreeByNameTable(dataSource, searchValue, searchColumns ? searchColumns : newSearchColumns);
313
+ setData(newData);
314
+ }
315
+ }, [dataSource, checkValue]);
316
+ useEffect(function () {
317
+ handleSearch(saveSearchValueLeft);
318
+ }, [handleSearch, saveSearchValueLeft]);
319
+
303
320
  //获取左侧列表选中的key
304
321
  useEffect(function () {
305
322
  if (getTargetKeys) {
@@ -347,35 +364,6 @@ var QuickTransfer = /*#__PURE__*/forwardRef(function (props, ref) {
347
364
  setIndeterminate(!!listCheckedKeys.length && listCheckedKeys.length < dataSource.length);
348
365
  setCheckAll(listCheckedKeys.length === dataSource.length);
349
366
  };
350
- // 左侧搜索框输入触发
351
- var handleSearch = function handleSearch(searchValue) {
352
- var newData = [];
353
- var listCheckedKeys_ = [];
354
- if (type === "list") {
355
- dataSource.forEach(function (item, index) {
356
- if (isMath(item.title, searchValue)) {
357
- newData.push(dataSource[index]);
358
- }
359
- });
360
- listCheckedKeys_ = newData.filter(function (item) {
361
- return checkValue.find(function (i) {
362
- return i.key == item.key;
363
- });
364
- }).map(function (item) {
365
- return item.key;
366
- });
367
- setData(newData);
368
- setListCheckedStyle(listCheckedKeys_, newData);
369
- }
370
- // if (type === "tree") {
371
- // newData = filterTree(dataSource, searchValue);
372
- // setData(newData);
373
- // }
374
- if (type === "table") {
375
- newData = filterTreeByNameTable(dataSource, searchValue, searchColumns ? searchColumns : newSearchColumns);
376
- setData(newData);
377
- }
378
- };
379
367
 
380
368
  //type为list 左侧列表选中触发的事件
381
369
  var onChangeChecked = function onChangeChecked(e, value) {
@@ -595,17 +583,15 @@ var QuickTransfer = /*#__PURE__*/forwardRef(function (props, ref) {
595
583
  var showSearchChange = function showSearchChange(e) {
596
584
  onSearchChange && onSearchChange(e);
597
585
  onLeftSearchChange && onLeftSearchChange(e);
598
- // 保存搜索结果
599
- if (searchValueLeft === undefined) {
600
- handleSearch(e.target.value);
601
- setSaveSearchValueLeft(e.target.value);
602
- }
586
+ // 保存搜索结果,实时保存不然受控模式中文会有问题
587
+ // if (searchValueLeft === undefined) {
588
+ setSaveSearchValueLeft(e.target.value);
589
+ // handleSearch(e.target.value);
590
+ // }
603
591
  };
604
592
  var showSearchChangeRight = function showSearchChangeRight(e) {
605
593
  onRightSearchChange(e);
606
- if (searchValueRight === undefined) {
607
- setSaveSearchValueRight(e.target.value);
608
- }
594
+ setSaveSearchValueRight(e.target.value);
609
595
  };
610
596
  // 全选状态改变触发
611
597
  var onCheckAllChange = function onCheckAllChange(e) {
package/package.json CHANGED
@@ -1,6 +1,6 @@
1
1
  {
2
2
  "name": "@chaoswise/ui",
3
- "version": "2.6.8",
3
+ "version": "2.6.9",
4
4
  "description": "公共UI库",
5
5
  "keywords": [
6
6
  "ui",
@@ -149,5 +149,5 @@
149
149
  "access": "public"
150
150
  },
151
151
  "license": "MIT",
152
- "gitHead": "9862a1d4a1f6556dd1fb953637e9bec805b4ea9a"
152
+ "gitHead": "b2d08aba1d82098b6b14d2086af3d1cc8262dcd8"
153
153
  }