最初のケース: チェックボックスがある場合
方法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 が見つかり, ノードは一意ではなくなります.