diff --git a/packages/primevue/src/tree/TreeNode.vue b/packages/primevue/src/tree/TreeNode.vue index 4aec247d5..bab3a1748 100755 --- a/packages/primevue/src/tree/TreeNode.vue +++ b/packages/primevue/src/tree/TreeNode.vue @@ -143,7 +143,9 @@ export default { } if (this.isCheckboxSelectionMode()) { - this.toggleCheckbox(); + if (this.node.selectable != false) { + this.toggleCheckbox(); + } } else { this.$emit('node-click', { originalEvent: event, @@ -337,7 +339,7 @@ export default { }); }, propagateDown(node, check, selectionKeys) { - if (check) selectionKeys[node.key] = { checked: true, partialChecked: false }; + if (check && node.selectable != false) selectionKeys[node.key] = { checked: true, partialChecked: false }; else delete selectionKeys[node.key]; if (node.children && node.children.length) { diff --git a/packages/primevue/src/treenode/TreeNode.d.ts b/packages/primevue/src/treenode/TreeNode.d.ts index d0827ddac..f4bc501db 100644 --- a/packages/primevue/src/treenode/TreeNode.d.ts +++ b/packages/primevue/src/treenode/TreeNode.d.ts @@ -44,7 +44,7 @@ export interface TreeNode { styleClass?: string; /** * Whether the node is selectable when selection mode is enabled. - * @defaultValue false + * @defaultValue null */ selectable?: boolean; /**