climblee / uv-ui

uv-ui 破釜沉舟之兼容vue3+2、app、h5、小程序等多端基于uni-app和uView2.x的生态框架,支持单独导入,开箱即用,利剑出击。
MIT License
726 stars 34 forks source link

好多组件都设置为 flex-1 且 width 100% 是否合理,例如uv-text #44

Closed seepine closed 9 months ago

seepine commented 9 months ago

否则对于全局flex布局,想要实现类似我已阅读并同意《用户协议》和《隐私政策》这句话,其中用户协议和隐私政策是蓝色,得搞view套着,否则布局就是平铺因为flex-1 理论这样做简单明了

<view class="flex flex-row">
  <uv-checkbox />
  <uv-text text="我已阅读xxx"/>
  <uv-text text="用户协议" type="primary"/>
  ...
</view>

但是因为flex-1,得变成如下代码,否则每个uv-text会变成均分

<view class="flex flex-row">
  <view><uv-checkbox /></view>
  <view><uv-text text="我已阅读xxx"/></view>
  <view><uv-text text="用户协议" type="primary"/></view>
  ...
</view>
climblee commented 9 months ago

是的,uv-text组件比较特殊,因为要实现lines等功能,必须要有宽度,所以内部使用flex=1,也是为了继承父级的宽度,如果不需要继承就给一个没有宽度的view

climblee commented 9 months ago

其他组件都是这样的考虑

seepine commented 9 months ago

一般项目中lines使用频率非常低,需要使用时手动设置宽度即可,而为了这个频率低的,设计为flex1,使得uv-text这种频率更高反而需要多套view,感觉...