From 603564456f03c018dfcb3bf78e59aadaa3ffe38e Mon Sep 17 00:00:00 2001 From: EnixCoda Date: Wed, 13 Jun 2018 23:38:08 +0800 Subject: [PATCH] perf(FileExplorer): skip scrollIntoView when click on tree Node --- src/components/FileExplorer.js | 8 ++++---- src/components/Node.js | 4 ++-- 2 files changed, 6 insertions(+), 6 deletions(-) diff --git a/src/components/FileExplorer.js b/src/components/FileExplorer.js index 499547b..399be37 100644 --- a/src/components/FileExplorer.js +++ b/src/components/FileExplorer.js @@ -157,15 +157,15 @@ export default class List extends React.Component { this.tasksAfterRender.push(DOMHelper.focusSearchInput) } - toggleNodeExpand = node => { + toggleNodeExpand = (node, skipScrollToNode) => { this.visibleNodesGenerator.toggleExpand(node) - this.focusNode(node) + this.focusNode(node, skipScrollToNode) this.tasksAfterRender.push(DOMHelper.focusFileExplorer) } - focusNode = node => { + focusNode = (node, skipScroll) => { this.visibleNodesGenerator.focusNode(node) - if (node) { + if (node && !skipScroll) { // when focus a node not in viewport(by keyboard), scroll to it const { visibleNodes: { nodes } } = this.state const indexOfToBeFocusedNode = nodes.indexOf(node) diff --git a/src/components/Node.js b/src/components/Node.js index 0395d3f..c78b2ed 100644 --- a/src/components/Node.js +++ b/src/components/Node.js @@ -17,10 +17,10 @@ function getIconType(node) { } export default class Node extends React.PureComponent { - onNodeClick = (...args) => { + onNodeClick = () => { const { node, toggleExpand } = this.props if (node.type === 'tree') { - toggleExpand(node, ...args) + toggleExpand(node, true) } else { DOMHelper.loadWithPJAX(node.url) }