Skip to content
New issue

Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.

By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.

Already on GitHub? Sign in to your account

[menu] 点击tab导航栏,对应菜单层级没有自动展开 #734

Closed
Mophar-gift opened this issue Jul 11, 2024 · 19 comments · Fixed by #744
Closed

[menu] 点击tab导航栏,对应菜单层级没有自动展开 #734

Mophar-gift opened this issue Jul 11, 2024 · 19 comments · Fixed by #744
Assignees
Labels
🐞 BUG Something isn't working 🏃🏻 in progress in progress

Comments

@Mophar-gift
Copy link

tdesign-vue-next 版本

1.9.7

重现链接

https://tdesign.tencent.com/starter/vue-next/list/base

重现步骤

直接在官方starters示例中即可复现

image

期望结果

期望左侧点击、tab点击、页面刷新等操作后都能自动定位到对应层级。
(以上操作都可以通过value属性自定定位展开,而不是通过手动绑定expanded,如果这种方式不好处理,请告知如果点击tab后使menu对应层级展开)

实际结果

点击tab导航栏,对应菜单层级没有自动展开

框架版本

Vue(3.4.31)

浏览器版本

No response

系统版本

win11

Node版本

20.9.0

补充说明

No response

Copy link
Contributor

👋 @Mophar-gift,感谢给 TDesign 提出了 issue。
请根据 issue 模版确保背景信息的完善,我们将调查并尽快回复你。

@uyarn
Copy link
Collaborator

uyarn commented Jul 11, 2024

这不是组件问题 两个组件之间本身没有直接关系 只能通过expand去控制左侧菜单的同时展开 需要在业务项目中调整代码实现的

@Mophar-gift
Copy link
Author

这不是组件问题 两个组件之间本身没有直接关系 只能通过expand去控制左侧菜单的同时展开 需要在业务项目中调整代码实现的

我并不是说两个组件之间存在什么问题,主要说的是路由切换应该自动展开对应的层级,这步操作不应由外部手动去控制,只需要告知组件当前激活的路由名称或者路径,组件自动展开对应的层级。如果使用expand来完全手动控制,甚至连点击都需要自己处理,非常麻烦。

@zwtderek1986
Copy link

我也是遇到这个问题,按理说设置了激活的路由,如果是多级应该自动的展开!但是你们这个组件设置激活的路由和展开成了两个概念!只要不是点击就不展开。比如市场上的element ui等其它大众组件都没有这个问题哎。

@zwtderek1986
Copy link

这不是组件问题 两个组件之间本身没有直接关系 只能通过expand去控制左侧菜单的同时展开 需要在业务项目中调整代码实现的

真心希望tdesign越来越好,但是用户提出可以优化的点,组件自己也可以解决的问题,需要我们修改并调整逻辑来辅助组件完成,真是奇怪了

@zwtderek1986
Copy link

@uyarn
Copy link
Collaborator

uyarn commented Jul 11, 2024

这不是组件问题 两个组件之间本身没有直接关系 只能通过expand去控制左侧菜单的同时展开 需要在业务项目中调整代码实现的

真心希望tdesign越来越好,但是用户提出可以优化的点,组件自己也可以解决的问题,需要我们修改并调整逻辑来辅助组件完成,真是奇怪了

这个issue的问题来自于页面模板的实现,页面模板就是业务项目的原型代码,在业务项目里调整实现,这个表述有什么问题吗请问?

@uyarn
Copy link
Collaborator

uyarn commented Jul 11, 2024

这不是组件问题 两个组件之间本身没有直接关系 只能通过expand去控制左侧菜单的同时展开 需要在业务项目中调整代码实现的

我并不是说两个组件之间存在什么问题,主要说的是路由切换应该自动展开对应的层级,这步操作不应由外部手动去控制,只需要告知组件当前激活的路由名称或者路径,组件自动展开对应的层级。如果使用expand来完全手动控制,甚至连点击都需要自己处理,非常麻烦。

这个可以transfer到页面模板的仓库跟进处理

@uyarn uyarn transferred this issue from Tencent/tdesign-vue-next Jul 11, 2024
Copy link
Contributor

♥️ 有劳 @timi137137 @liweijie0812 尽快确认问题。
确认有效后将下一步计划和可能需要的时间回复给 @Mophar-gift

@Tencent Tencent deleted a comment from github-actions bot Jul 11, 2024
@timi137137
Copy link
Collaborator

收到稍后跟进

@timi137137 timi137137 added 🐞 BUG Something isn't working 🏃🏻 in progress in progress labels Jul 11, 2024
@zwtderek1986
Copy link

这不是组件问题 两个组件之间本身没有直接关系 只能通过expand去控制左侧菜单的同时展开 需要在业务项目中调整代码实现的

真心希望tdesign越来越好,但是用户提出可以优化的点,组件自己也可以解决的问题,需要我们修改并调整逻辑来辅助组件完成,真是奇怪了

这个issue的问题来自于页面模板的实现,页面模板就是业务项目的原型代码,在业务项目里调整实现,这个表述有什么问题吗请问?

大哥人家只是说模版也有这个问题,我们自行在做的过程中也遇见了,所以去你们提供的模版看看喽。。。而本身人家描述存在的问题,就是既然当前激活的路由已经设置给了组件,为什么多层的展开不能触发?这个功能不是组件的么?你回答的意思是组件没问题,让我们自己去改业务代码实现。。。。。。

@uyarn
Copy link
Collaborator

uyarn commented Jul 11, 2024

这不是组件问题 两个组件之间本身没有直接关系 只能通过expand去控制左侧菜单的同时展开 需要在业务项目中调整代码实现的

真心希望tdesign越来越好,但是用户提出可以优化的点,组件自己也可以解决的问题,需要我们修改并调整逻辑来辅助组件完成,真是奇怪了

这个issue的问题来自于页面模板的实现,页面模板就是业务项目的原型代码,在业务项目里调整实现,这个表述有什么问题吗请问?

大哥人家只是说模版也有这个问题,我们自行在做的过程中也遇见了,所以去你们提供的模版看看喽。。。而本身人家描述存在的问题,就是既然当前激活的路由已经设置给了组件,为什么多层的展开不能触发?这个功能不是组件的么?你回答的意思是组件没问题,让我们自己去改业务代码实现。。。。。。

我的意思也很明确,麻烦你仔细看清楚,这不是组件问题,页面模板实现漏了逻辑。

@timi137137
Copy link
Collaborator

好了好了,这个没什么需要争吵的,uy的意识只是题主发issue的地方是在组件库,组件本身不负责这个实现。消消气我这边有空就去处理

@zwtderek1986
Copy link

这不是组件问题 两个组件之间本身没有直接关系 只能通过expand去控制左侧菜单的同时展开 需要在业务项目中调整代码实现的

真心希望tdesign越来越好,但是用户提出可以优化的点,组件自己也可以解决的问题,需要我们修改并调整逻辑来辅助组件完成,真是奇怪了

这个issue的问题来自于页面模板的实现,页面模板就是业务项目的原型代码,在业务项目里调整实现,这个表述有什么问题吗请问?

大哥人家只是说模版也有这个问题,我们自行在做的过程中也遇见了,所以去你们提供的模版看看喽。。。而本身人家描述存在的问题,就是既然当前激活的路由已经设置给了组件,为什么多层的展开不能触发?这个功能不是组件的么?你回答的意思是组件没问题,让我们自己去改业务代码实现。。。。。。

我的意思也很明确,麻烦你仔细看清楚,这不是组件问题,页面模板实现漏了逻辑。

我们也只是提个建议,因为看完市面上ui库,发现并没有在组件使用之外去做额外的处理,只是设置一下当前激活路由,组件会自动处理!刚好看见你们提供的模版也存在这个问题,就以这个为例了!不是说你组件有问题,而是说组件可以在优化一下,这么说有问题么?

@zwtderek1986
Copy link

好了好了,这个没什么需要争吵的,uy的意识只是题主发issue的地方是在组件库,组件本身不负责这个实现。消消气我这边有空就去处理

我们是觉得组件可以优化掉这个问题而已,在使用组件的过程中发现没有比较好处理的方式!我也尝试了用expand这个,但是发现点就多层直接就不展开了,貌似是要我自行维护,过于麻烦

@Mophar-gift
Copy link
Author

不好意思 我是想在组件库下提issue的,看到模板里也存在这个问题,就直接提了。大家和气讨论哈,爱之深恨之切,希望这个问题可以得到大家关注哈。

@uyarn
Copy link
Collaborator

uyarn commented Jul 11, 2024

这不是组件问题 两个组件之间本身没有直接关系 只能通过expand去控制左侧菜单的同时展开 需要在业务项目中调整代码实现的

真心希望tdesign越来越好,但是用户提出可以优化的点,组件自己也可以解决的问题,需要我们修改并调整逻辑来辅助组件完成,真是奇怪了

这个issue的问题来自于页面模板的实现,页面模板就是业务项目的原型代码,在业务项目里调整实现,这个表述有什么问题吗请问?

大哥人家只是说模版也有这个问题,我们自行在做的过程中也遇见了,所以去你们提供的模版看看喽。。。而本身人家描述存在的问题,就是既然当前激活的路由已经设置给了组件,为什么多层的展开不能触发?这个功能不是组件的么?你回答的意思是组件没问题,让我们自己去改业务代码实现。。。。。。

我的意思也很明确,麻烦你仔细看清楚,这不是组件问题,页面模板实现漏了逻辑。

我们也只是提个建议,因为看完市面上ui库,发现并没有在组件使用之外去做额外的处理,只是设置一下当前激活路由,组件会自动处理!刚好看见你们提供的模版也存在这个问题,就以这个为例了!不是说你组件有问题,而是说组件可以在优化一下,这么说有问题么?

每个组件库都有自己的实现思路,我们觉得组件本身不应该过多实现路由相关的耦合逻辑,对组件本身的维护来说是个负担,仅此而已。只是我不理解我的回复有什么让你“真是奇怪了”的点,上面的回答我以为已经很清楚了。当然我没有想争吵什么的意思,可能我的反问语气让你误会了。

@zwtderek1986
Copy link

这不是组件问题 两个组件之间本身没有直接关系 只能通过expand去控制左侧菜单的同时展开 需要在业务项目中调整代码实现的

真心希望tdesign越来越好,但是用户提出可以优化的点,组件自己也可以解决的问题,需要我们修改并调整逻辑来辅助组件完成,真是奇怪了

这个issue的问题来自于页面模板的实现,页面模板就是业务项目的原型代码,在业务项目里调整实现,这个表述有什么问题吗请问?

大哥人家只是说模版也有这个问题,我们自行在做的过程中也遇见了,所以去你们提供的模版看看喽。。。而本身人家描述存在的问题,就是既然当前激活的路由已经设置给了组件,为什么多层的展开不能触发?这个功能不是组件的么?你回答的意思是组件没问题,让我们自己去改业务代码实现。。。。。。

我的意思也很明确,麻烦你仔细看清楚,这不是组件问题,页面模板实现漏了逻辑。

我们也只是提个建议,因为看完市面上ui库,发现并没有在组件使用之外去做额外的处理,只是设置一下当前激活路由,组件会自动处理!刚好看见你们提供的模版也存在这个问题,就以这个为例了!不是说你组件有问题,而是说组件可以在优化一下,这么说有问题么?

每个组件库都有自己的实现思路,我们觉得组件本身不应该过多实现路由相关的耦合逻辑,对组件本身的维护来说是个负担,仅此而已。只是我不理解我的回复有什么让你“真是奇怪了”的点,上面的回答我以为已经很清楚了。当然我没有想争吵什么的意思,可能我的反问语气让你误会了。

有自己的实现思路,这个我理解,也表示赞同!但是站在使用者的角度出发,也不希望把个很简单的功能搞的很复杂,而组件的开发初衷我想还是方便开发者使用吧,市面上其它大大小小的组件库也都处理了这个问题了呀!我们只是提交建议,帮助你们把产品做的完善和更好,也希望你们更好而已!

@zwtderek1986
Copy link

@uyarn 也麻烦你们看看吧,楼主提出的问题,如何解决!刷新吧,需要自行处理defaultExpanded来解决展开激活项,但是没法解决tab的切换自动展开!使用expanded,就会出现过度层的点击需要自行监听的问题,否则点击无效

RSS1102 added a commit to RSS1102/tdesign-vue-next-starter that referenced this issue Aug 14, 2024
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment
Labels
🐞 BUG Something isn't working 🏃🏻 in progress in progress
Projects
None yet
Development

Successfully merging a pull request may close this issue.

5 participants