Skip to content

Commit 17fc71d

Browse files
author
liyuan-meng
committed
🐛[CTable]解决表格已选数据回显报错的问题
1 parent f99eb85 commit 17fc71d

1 file changed

Lines changed: 4 additions & 4 deletions

File tree

src/components/c-table/index.js

Lines changed: 4 additions & 4 deletions
Original file line numberDiff line numberDiff line change
@@ -466,10 +466,10 @@ class CTable extends Component {
466466
*/
467467
setCheckedData = () => {
468468
// 更新叶子节点 leafNodesMap 的选中状态
469-
this.props.checkedData.forEach((cNode) => {
469+
this.props.checkedData?.forEach((cNode) => {
470470
const cNodeVal = this.getKeyFieldVal(cNode);
471471
if (this.leafNodesMap[cNodeVal]) {
472-
this.leafNodesMap[cNodeVal].childNodes.forEach((node) => {
472+
this.leafNodesMap[cNodeVal]?.childNodes?.forEach((node) => {
473473
Object.assign(node, { checked: true });
474474
});
475475
} else {
@@ -479,7 +479,7 @@ class CTable extends Component {
479479
});
480480
const leafNodeKeys = Object.keys(this.leafNodesMap);
481481
leafNodeKeys.forEach((key) => {
482-
const isCheckedNode = !!this.props.checkedData.find(
482+
const isCheckedNode = !!this.props?.checkedData.find(
483483
(node) => String(this.getKeyFieldVal(node)) === String(key),
484484
);
485485
// 不是已选节点 && (没有子节点被选中 或者 全部子节点都被选中)
@@ -489,7 +489,7 @@ class CTable extends Component {
489489
isEveryChecked(this.leafNodesMap[key].childNodes))
490490
) {
491491
if (typeof this.leafNodesMap[key] === 'object') {
492-
this.leafNodesMap[key].childNodes.forEach((node) => {
492+
this.leafNodesMap[key]?.childNodes?.forEach((node) => {
493493
Object.assign(node, { checked: false });
494494
});
495495
} else {

0 commit comments

Comments
 (0)