エレメント ui ツリー ツリー コントロールは、現在のノード ID と親ノード ID を取得します

最初のケース: チェックボックスがある場合

方法1

1. node_modules/element-ui/lib/element-ui.common.js ファイルを見つけます

2. Ctrl+F を押してメソッド TreeStore.prototype.getCheckedKeys を検索します. 下位バージョンのチュートリアルはこのステップで直接変更されており (詳細については上記のチュートリアルを参照してください), if(node.checked) が見つからないことがわかりました.図に示すように:

しかし、this.getCheckedNodes を返すことがわかります。このメソッドを検索してみましょう (実際、この関数は現在の関数の上にあります)。写真に示すように:

上記のコードを次のように変更します。

保存して再起動

方法 2:

elementUI 公式 Web サイトで指定

        this.$refs.tree.getHalfCheckedKeys().concat(this.$refs.tree.getCheckedKeys()) 

 

2 番目のケース: チェック ボックスはなく、ノードをクリックするだけです。

方法 1:

el-tree をクリックして現在のノード ノードを直接取得すると、現在のデータ ノード データ、現在のノード ノード、およびルート ルート ノード データの 3 つのパラメータを受け取ります。親は、node.parent ノード データを介して取得できます。祖先レベルをレイヤーごとにトラバースして、node.parent.parent を取得できます。

let oriFatherId = node.parent.parent.data  // 祖父节点信息

let fatherId = node.parent.data  // 父节点信息

方法 2:

現在のノード ID はクリックで取得でき、祖父母ノード データは el-tree の parentNode=getNode(node.parent.id) で取得できます。これは少し複雑です. この方法を使用するにはノード ID が一意である必要があり, 繰り返すことはできません. そうしないと, 複数の ID が見つかり, ノードは一意ではなくなります.

おすすめ

転載: blog.csdn.net/ShIcily/article/details/110175002