v1.7.2 - add enableLinkAnchor prop

This commit is contained in:
LINING-PC\lining
2026-01-15 16:42:01 +08:00
parent 22621f1fa9
commit 5e9d0db206
6 changed files with 40 additions and 4 deletions

View File

@@ -5,6 +5,12 @@ All notable changes to this project will be documented in this file.
The format is based on [Keep a Changelog](https://keepachangelog.com/en/1.0.0/),
and this project adheres to [Semantic Versioning](https://semver.org/spec/v2.0.0.html).
## [1.7.2] - 2026-01-15
### Added
- 🎉 新增GanttChart新增属性enableLinkAnchor用于控制Taskbar的关系线锚点
- 🎉 Added: New property in GanttChart - enableLinkAnchor to control the relationship line anchor points of Taskbar
## [1.7.1] - 2026-01-11
### Added

View File

@@ -36,8 +36,12 @@
</p>
<p align="center">
<a href="https://jordium.gitee.io/jordium-gantt-vue3/">
<strong>📱 Gitee Live Demo</strong>
</a>
&nbsp;&nbsp;|&nbsp;&nbsp;
<a href="https://nelson820125.github.io/jordium-gantt-vue3/">
<strong>📱 Live Demo</strong>
<strong>📱 Github Live Demo</strong>
</a>
&nbsp;&nbsp;|&nbsp;&nbsp;
<a href="https://github.com/nelson820125/jordium-gantt-vue3">
@@ -205,6 +209,7 @@ npm run dev
| `timeScale` ![v1.7.1](https://img.shields.io/badge/v1.7.1-409EFF?style=flat-square&labelColor=ECF5FF) | `'hour' \| 'day' \| 'week' \| 'month' \| 'quarter' \| 'year'` | `'week'` | Time scale (reactive). Timeline scale will follow changes |
| `fullscreen` ![v1.7.1](https://img.shields.io/badge/v1.7.1-409EFF?style=flat-square&labelColor=ECF5FF) | `boolean` | `false` | Fullscreen state control (reactive). Component's fullscreen state will follow changes |
| `expandAll` ![v1.7.1](https://img.shields.io/badge/v1.7.1-409EFF?style=flat-square&labelColor=ECF5FF) | `boolean` | `true` | Expand/collapse all tasks (reactive). All tasks' expand state will follow changes |
| `enableLinkAnchor` ![v1.7.2](https://img.shields.io/badge/v1.7.2-409EFF?style=flat-square&labelColor=ECF5FF) | `boolean` | `true` | Whether to enable Link AnchorDefault: true |
#### TaskListColumn Component Props

View File

@@ -36,8 +36,12 @@
</p>
<p align="center">
<a href="https://jordium.gitee.io/jordium-gantt-vue3/">
<strong>📱 Gitee在线演示</strong>
</a>
&nbsp;&nbsp;|&nbsp;&nbsp;
<a href="https://nelson820125.github.io/jordium-gantt-vue3/">
<strong>📱 在线演示</strong>
<strong>📱 Github在线演示</strong>
</a>
&nbsp;&nbsp;|&nbsp;&nbsp;
<a href="https://github.com/nelson820125/jordium-gantt-vue3">
@@ -203,6 +207,7 @@ npm run dev
| `timeScale` ![v1.7.1](https://img.shields.io/badge/v1.7.1-409EFF?style=flat-square&labelColor=ECF5FF) | `'hour' \| 'day' \| 'week' \| 'month' \| 'quarter' \| 'year'` | `'week'` | 时间刻度(响应式)。设置后时间线刻度将跟随变化 |
| `fullscreen` ![v1.7.1](https://img.shields.io/badge/v1.7.1-409EFF?style=flat-square&labelColor=ECF5FF) | `boolean` | `false` | 全屏状态控制(响应式)。设置后组件全屏状态将跟随变化 |
| `expandAll` ![v1.7.1](https://img.shields.io/badge/v1.7.1-409EFF?style=flat-square&labelColor=ECF5FF) | `boolean` | `true` | 展开/收起所有任务(响应式)。设置后所有任务的展开状态将跟随变化 |
| `enableLinkAnchor` ![v1.7.2](https://img.shields.io/badge/v1.7.2-409EFF?style=flat-square&labelColor=ECF5FF) | `boolean` | `true` | 是否开启Taskbar的关系线锚点默认值: true |
#### TaskListColumn 属性

View File

@@ -456,5 +456,15 @@
"🎉 Added: Exposed methods in GanttChart to scroll to today/task/specified date - scrollToToday & scrollToTask & scrollToDate",
"<span style=\"font-weight: bold; color: #f00;\">Special thanks to name-hard@github for their use and suggestions</span>"
]
},
{
"version": "1.7.2",
"date": "2026-01-15",
"notes": [
"🎉 新增GanttChart新增属性enableLinkAnchor用于控制Taskbar的关系线锚点",
"<span style=\"font-weight: bold; color: #f00;\">特别感谢 YQ6494@gitee的使用及建议</span>",
"🎉 Added: New property in GanttChart - enableLinkAnchor to control the relationship line anchor points of Taskbar",
"<span style=\"font-weight: bold; color: #f00;\">Special thanks to YQ6494@gitee for their use and suggestions</span>"
]
}
]

View File

@@ -58,6 +58,7 @@ const props = withDefaults(defineProps<Props>(), {
taskListRowStyle: undefined,
enableTaskListContextMenu: true,
enableTaskBarContextMenu: true,
enableLinkAnchor: true,
fullscreen: false,
expandAll: true,
locale: 'zh-CN',
@@ -105,6 +106,9 @@ provide('gantt-column-slots', slots)
provide('enable-task-list-context-menu', computed(() => props.enableTaskListContextMenu))
provide('enable-task-bar-context-menu', computed(() => props.enableTaskBarContextMenu))
// 提供 LinkAnchor 配置给子组件
provide('enable-link-anchor', computed(() => props.enableLinkAnchor))
// 使用声明式右键菜单 composables
const { hasDeclarativeContextMenu: hasDeclarativeTaskListContextMenu, declarativeContextMenu: declarativeTaskListContextMenu } =
useTaskListContextMenu(slots)
@@ -194,6 +198,9 @@ interface Props {
// 当设置为 true 且声明了 TaskBarContextMenu 组件时,使用自定义菜单
// 当设置为 false 时无论是否声明组件TaskBar 右键菜单都失效
enableTaskBarContextMenu?: boolean
// 是否启用 LinkAnchor 连接触点功能(默认为 true
// 当设置为 false 时TaskBar 上不显示前置/后置任务的连接触点
enableLinkAnchor?: boolean
// 全屏状态控制(响应式)
fullscreen?: boolean
// 展开/收起所有任务(响应式)

View File

@@ -10,6 +10,9 @@ import { useI18n } from '../composables/useI18n'
import type { TaskBarConfig } from '../models/configs/TaskBarConfig'
import { DEFAULT_TASK_BAR_CONFIG } from '../models/configs/TaskBarConfig'
// 从 GanttChart 注入 enableLinkAnchor 配置
const enableLinkAnchor = inject<ComputedRef<boolean>>('enable-link-anchor', computed(() => true))
interface Props {
task: Task
rowHeight: number
@@ -2547,7 +2550,7 @@ const handleAnchorDragEnd = (anchorEvent: { taskId: number; type: 'predecessor'
<!-- 连接线触点 - 只在非高亮模式且非父级任务时显示 -->
<!-- 前置任务触点(左侧) -->
<LinkAnchor
v-if="!isParent && !isInHighlightMode"
v-if="enableLinkAnchor && !isParent && !isInHighlightMode"
type="predecessor"
:task-id="task.id"
:visible="isTaskBarHovered"
@@ -2561,7 +2564,7 @@ const handleAnchorDragEnd = (anchorEvent: { taskId: number; type: 'predecessor'
/>
<!-- 后置任务触点(右侧) -->
<LinkAnchor
v-if="!isParent && !isInHighlightMode"
v-if="enableLinkAnchor && !isParent && !isInHighlightMode"
type="successor"
:task-id="task.id"
:visible="isTaskBarHovered"