ElemeFE / vue-desktop

A UI library for building admin panel website.
547 stars 99 forks source link

dialog控件无法滚动 #29

Open scgy5555 opened 8 years ago

scgy5555 commented 8 years ago

dialog控件遇到过长内容时无法滚动。 经验证是在结构上与modal脱离了,导致没有一个可提供滚动的外层 内部通过继承vue-popup实现的,也不好扩展

scgy5555 commented 8 years ago

这个问题还有解吗?不行把vue-popup当做组件写到项目里也可以啊,用npm包完全没法修改啊

furybean commented 8 years ago

可以这么解决:

<d-dialog title="title" width="800">
    <div style="height: 400px; overflow: auto;">
    </div>
</div>
scgy5555 commented 8 years ago

我的天,你这是在质疑我的智商吗。。 可以这么应付,不能这么解决,真的是结构问题,去看看bootstrap怎么写的

furybean commented 8 years ago

我好像理解错了。 你指的是后面的 modal 出来之后,如果过长,body 可以滚动?

scgy5555 commented 8 years ago

是的,原谅我表达能力有限,让你两个月后才知道我在说什么

很多时候是不希望跟同时滚动的,所以人们做了一个modal外层承载dialog bootstrap的做法非常简单 1. 停止body的滚动(增加overflow: hidden) 2. 创建modal元素(modal的overflow-y: auto) 3. 把dialog放进去 而目前问题在于你们的dialog插件是继承了vue-popup这个根本没有托管在github的npm组件 其中的实现是dialog和modal同层,导致model出来之后如果过长,body无法滚动 解决方案很简单,把dialog创建到modal之中 1. 因为vue-popup没有托管在github没法提交修改 2. 我不想抄个vue-popup到组件,等你一更新没法维护了(实际上感觉更新还是很勤的) 是不是再截个图,你才能看的懂我说的是什么?