diff --git a/frontend/src/components/index-viewer.js b/frontend/src/components/index-viewer.js index 7bd6d6c9fd..22f66226c3 100644 --- a/frontend/src/components/index-viewer.js +++ b/frontend/src/components/index-viewer.js @@ -78,13 +78,14 @@ class IndexContentViewer extends React.Component { onLinkClick = (event) => { event.preventDefault(); - event.stopPropagation(); - const link = this.getLink(event.target); - if (link) this.props.onLinkClick(link); const currentPath = event.target.getAttribute('data-path'); - if (currentPath) { + if (currentPath === this.state.currentPath) { + return; + } else if (currentPath) { this.setState({ currentPath: currentPath }); } + const link = this.getLink(event.target); + if (link) this.props.onLinkClick(link); } getLink = (node) => { @@ -248,12 +249,16 @@ class FolderItem extends React.Component { }); } + expandChildNodes = () => { + this.setState({ expanded: true }); + } + renderLink = (node) => { const className = node.path === this.props.currentPath ? 'wiki-nav-content wiki-nav-content-highlight' : 'wiki-nav-content'; if (node.href && node.name) { - return
{node.name}
; + return
{node.name}
; } else if (node.name) { - return
{node.name}
; + return
{node.name}
; } else { return null; } diff --git a/frontend/src/css/index-viewer.css b/frontend/src/css/index-viewer.css index 2cb9369793..7dc2d6004a 100644 --- a/frontend/src/css/index-viewer.css +++ b/frontend/src/css/index-viewer.css @@ -24,4 +24,5 @@ color: #c0c0c0; cursor: pointer; font-size: 12px; + padding-right: 10px; } \ No newline at end of file diff --git a/frontend/src/css/work-weixin-departments.css b/frontend/src/css/work-weixin-departments.css index ad2ab6b92b..72fef9fdc7 100644 --- a/frontend/src/css/work-weixin-departments.css +++ b/frontend/src/css/work-weixin-departments.css @@ -70,9 +70,11 @@ .tree-node-hight-light .attr-action-icon:hover { color: #fff !important; } +.tree-node-icon { + padding-right: 1.5rem; +} .tree-node-text { - padding-left: 1.3rem; - width: calc(100% - 1.3rem); + width: calc(100% - 2.5rem); font-size: 14px; white-space: nowrap; overflow: hidden; diff --git a/frontend/src/pages/sys-admin/work-weixin/work-weixin-departments-tree-node.js b/frontend/src/pages/sys-admin/work-weixin/work-weixin-departments-tree-node.js index 9d1b9c751b..ee53044c1c 100644 --- a/frontend/src/pages/sys-admin/work-weixin/work-weixin-departments-tree-node.js +++ b/frontend/src/pages/sys-admin/work-weixin/work-weixin-departments-tree-node.js @@ -75,6 +75,14 @@ class WorkWeixinDepartmentsTreeNode extends Component { } }; + changeDept = (departmentID) => { + const { department, checkedDepartmentId } = this.props; + this.props.onChangeDepartment(departmentID); + if (checkedDepartmentId === department.id && !this.state.isChildrenShow) { + this.setState({ isChildrenShow: true }); + } + } + render() { const { isChildrenShow, department, checkedDepartmentId } = this.props; let toggleClass = classNames({ @@ -91,11 +99,13 @@ class WorkWeixinDepartmentsTreeNode extends Component { {isChildrenShow &&
this.props.onChangeDepartment(department.id)} + onClick={() => this.changeDept(department.id)} onMouseEnter={this.onMouseEnter} onMouseLeave={this.onMouseLeave} > - this.toggleChildren(e)}>{' '} + this.toggleChildren(e)}> + + {department.name} {isPro &&