diff --git a/pc4mobx/organization/components/office/components/Untitled-1.js b/pc4mobx/organization/components/office/components/Untitled-1.js deleted file mode 100644 index 0e369d8..0000000 --- a/pc4mobx/organization/components/office/components/Untitled-1.js +++ /dev/null @@ -1,259 +0,0 @@ -import React, { Component } from "react"; -import { Tree, Menu } from "antd"; -import { WeaInputSearch } from "ecCom"; -import "../index.less"; - -const TreeNode = Tree.TreeNode; -const treeData = [ - { - title: "0-0", - key: "0-0", - children: [ - { - title: "0-0-0", - key: "0-0-0", - children: [ - { title: "0-0-0-0-88", key: "0-0-0-0" }, - { title: "0-0-0-1", key: "0-0-0-1" }, - { title: "0-0-0-2", key: "0-0-0-2" }, - ], - }, - { - title: "0-0-1", - key: "0-0-1", - children: [ - { title: "0-0-1-0", key: "0-0-1-0" }, - { title: "0-0-1-1", key: "0-0-1-1" }, - { title: "0-0-1-2", key: "0-0-1-2" }, - ], - }, - { - title: "0-0-2", - key: "0-0-2", - }, - ], - }, - { - title: "99", - key: "0-1", - children: [ - { title: "0-1-0-0", key: "0-1-0-0" }, - { title: "9988", key: "0-1-0-1" }, - { title: "0-1-0-2-99988", key: "0-1-0-2" }, - ], - }, - { - title: "0-2", - key: "0-2", - }, -]; - -export default class LeftTree extends Component { - constructor(props) { - super(props); - this.state = { - expandedKeys: [], - treeData: [], - copyTree: [], - copyExpandedKeys: [], - searchValue: "", - rightClickNodeTreeItem: null, - }; - } - componentDidMount() { - let a = this.expandedKeysFun(treeData); //展开key - let cp = JSON.stringify(treeData); //这个是最简单的 深拷贝 - this.setState({ - treeData: treeData, - expandedKeys: a, - copyTree: cp, - copyExpandedKeys: a, - }); - document.addEventListener("click", this.handleClick); - } - componentWillUnmount() { - document.removeEventListener("click", this.handleClick); - } - - handleClick = () => { - this.setState({ rightClickNodeTreeItem: null }); - }; - - onSelect = (node) => { - this.setState({ rightClickNodeTreeItem: null }); - }; - - treeNodeonRightClick = (e) => { - this.setState({ - rightClickNodeTreeItem: { - pageX: e.event.pageX, - pageY: e.event.pageY, - id: e.node.props["data-key"], - categoryName: e.node.props["data-title"], - }, - }); - }; - - arrayTreeFilter = (data, predicate, filterText) => { - const nodes = data; - if (!(nodes && nodes.length)) { - return; - } - const newChildren = []; - for (const node of nodes) { - if (predicate(node, filterText)) { - newChildren.push(node); - node.children = this.arrayTreeFilter( - node.children, - predicate, - filterText - ); - } else { - const subs = this.arrayTreeFilter(node.children, predicate, filterText); - if ((subs && subs.length) || predicate(node, filterText)) { - node.children = subs; - newChildren.push(node); - } - } - } - return newChildren; - }; - - filterFn = (data, filterText) => { - if (!filterText) { - return true; - } - return new RegExp(filterText, "i").test(data.title); - }; - flatTreeFun = (treeData) => { - let arr = []; - const flatTree = (treeData) => { - treeData.map((item, index) => { - arr.push(item); - if (item.children && item.children.length > 0) { - flatTree(item.children); - item.children = []; - } - }); - }; - flatTree(treeData); - return arr; - }; - expandedKeysFun = (treeData) => { - if (treeData && treeData.length == 0) { - return []; - } - let arr = []; - const expandedKeysFn = (treeData) => { - treeData.map((item, index) => { - arr.push(item.key); - if (item.children && item.children.length > 0) { - expandedKeysFn(item.children); - } - }); - }; - expandedKeysFn(treeData); - return arr; - }; - onChange = (value) => { - if (value == "") { - let { copyTree, copyExpandedKeys } = this.state; - this.setState({ - treeData: JSON.parse(copyTree), - expandedKeys: copyExpandedKeys, - }); - } else { - let { copyTree, copyExpandedKeys } = this.state; - let res = this.arrayTreeFilter( - JSON.parse(copyTree), - this.filterFn, - value - ); - let expkey = this.expandedKeysFun(res); - this.setState({ - treeData: res, - expandedKeys: expkey, - }); - } - }; - - onExpand = (expandedKeys) => { - this.setState({ - expandedKeys, - }); - }; - - getNodeTreeRightClickMenu = () => { - const { pageX, pageY } = { ...this.state.rightClickNodeTreeItem }; - const tmpStyle = { - position: "absolute", - left: `${pageX}px`, - top: `${pageY}px`, - }; - const menu = ( -
- ); - return this.state.rightClickNodeTreeItem == null ? "" : menu; - }; - - renderTreeNode = (data) => { - if (data.length == 0) { - return; - } - let { expandedKeys, searchValue } = this.state; - return data.map((item) => { - const index = item.title.indexOf(searchValue); - const beforeStr = item.title.substr(0, index); - const afterStr = item.title.substr(index + searchValue.length); - const title = - index > -1 ? ( - - {beforeStr} - {searchValue} - {afterStr} - - ) : ( - {item.title} - ); - if (item.children && item.children.length > 0) { - return ( -