airyland / vux

Mobile UI Components based on Vue & WeUI
https://vux.li
MIT License
17.59k stars 3.71k forks source link

Component Proposal (新组件建议集中在这里提 ) #139

Open airyland opened 8 years ago

airyland commented 8 years ago

If you need a new component, comment here and attach screenshots, thanks.

如果有新组件需求,请在这里评论并附上实际例子截图。

scroller不是一个好的解决方式,如果只是为了Loadmore, 将独立提供loadmore组件

kitkimwong commented 6 years ago

@airyland 有計劃加入這種下拉select嗎? https://vuematerial.io/components/select

現在的selector用起來就是原生的html select 在IOS上看起來不怎麼樣

bailin240 commented 6 years ago

image 现在的 radio 禁用只能一次所以的禁用所有的 业务需求 状态只能向上改动不能向下 比如我现在在处理中 就不能向前面的状态修改 如果要做本来也是可以用两个数据源 但是感觉这样不好的吧 可不可单独设置那些需要禁用的呢

airyland commented 6 years ago

@kitkimwong 用 popup-radio 吧 @bailin240 没看懂,还是代码说明吧

bailin240 commented 6 years ago

@airyland radio源数据可否禁用一部分不可点击 一部分可以点击选择 数据有不可操作项 现在的禁用属性是禁用所有斗不可操作嘛

greedying commented 6 years ago

关于panel的几点小需求: 1、图片可否自由选择放到左侧还是右侧? 左右都是很普遍的。 2、图片目前限定是方形的,其他尺寸比例会有空白。可否自适应一下?比如使用 object-fit:cover 之类的属性?

KarnaughK commented 6 years ago

x-input 可否添加一个屏蔽表情输入的功能?

yjj5855 commented 6 years ago

建议 添加一个form表单组件 来统一管理验证问题,像element-ui一样用async-validator验证库 目前我参考element-ui自己撸了一个,用起来是这样的

<bb-form ref="form">
        <group>
          <bb-input title="姓名" prop="name" v-model="value.basic.name" :rules="rules.basic.name"></bb-input>
          <bb-datetime title="出生年月" prop="birthday" v-model="value.basic.birthday" :rules="rules.basic.birthday"></bb-datetime>
          <bb-select title="证件类型" prop="idType" v-model="value.basic.idType" :options="selectOptions.idTypeCodeList" :rules="rules.basic.idType"></bb-select>
        </group>
</bb-form>

rules 就是async-validator的规则

#验证整个表单只要
this.$refs['form'].validate(function (valid) {
  if (valid) {
     // 验证成功
   }
})

#验证某个字段
this.$refs['form'].validateField('name', function (valid) {
  if (valid) {
     // 验证成功
   }
})

但是某些组件不能像XInput那样很容易的添加错误提示比如selector组件

lbb00 commented 6 years ago

@yjj5855 cool.你的github name跟我一个朋友好像~

airyland commented 6 years ago

@yjj5855 统一验证这是在计划中的,不过暂时没有时间做。

zn3051644 commented 6 years ago

建议做个模态窗的弹出 例如https://wangdahoo.github.io/vonic/docs/#/advanced/modal 这样的 @airyland

sendking commented 6 years ago

现如今的x-dialog是通过引组件的方式,一般dialog其实使用

Dialog.alert({
  title:'',
  content:'',
  handle:{
    onOk:()=>{},
    onClose:()=>{}
 }
})

类似这种形式即可满足需求。

如果是更加可定制化,弹出模态框的形式,往里面塞元素的形式是不是更加解耦一点? 参考: https://github.com/youzan/vant/blob/dev/packages/dialog/dialog.vue

CongjiZhu commented 6 years ago

我从2.1版本升级到2.9版本后,无法编译less 报错: error in ./~/_vux@2.9.0@vux/src/styles/1px.less Module build failed: Unknown word (22:5) 20 | .vux-1px { 21 | &:before {

(已经安装less 和 less-loader) 如果我把less的文件全部删除,则会报错Uncaught TypeError: _vm.$t is not a function,关于$t的一些列报错,好磨人

tangMr1234 commented 6 years ago

pannel组件的图片能否加上懒加载。希望pannel组件能加上slot,自定义一部分不同的样式,比如不想只是标题加简介,可能希望简介的地方能自定义样式,能写多个按钮或者其他的

airyland commented 6 years ago

@CongjiZhu 这种类似于升级到某个版本什么都没有做出错了但是没有 repo 的 issue 是无法解决的。

ahkid commented 6 years ago

希望能加入导航的下拉菜单组件 :)

jjskay commented 6 years ago

下拉刷新的组件为什么不维护了呢?这个在移动端不是很常用的功能吗?

iamwelk commented 6 years ago

swiper组件在自定义swiper-item时,如果嵌入了video元素,在微信中会导致无法左右滑动切换

GuoJiKaiHehe commented 6 years ago

Previewer 这个组件,打包后,占用了 1MB的大小。怎么优化?

wxingheng commented 6 years ago

一个完美的补充,包含完整的演示demo vux-uploads

新增 预览 删除 loading 。。。 包含完整的演示demo (包括服务端接口),已在公司项目使用

eJayYoung commented 5 years ago

If you need a new component, comment here and attach screenshots, thanks.

如果有新组件需求,请在这里评论并附上实际例子截图。

  • [ ] Off-canvas menus 侧边栏 #124 #139
  • [x] Badge #124
  • [ ] ~Uploader #139 ~ 不做封装,很难满足所有人需求,引入样式自己开发 https://github.com/airyland/vux/blob/v2/src/demos/Uploader.vue 或者使用 @greedying 开发的 vux-uploaders #997
  • [ ] Smart select #199
  • [x] Image preview @nowui
  • [x] swipeout #412
  • [x] popover
  • [ ] collapse #1117 @zerofront
  • [ ] index-list #1882

scroller不是一个好的解决方式,如果只是为了Loadmore, 将独立提供loadmore组件

  • [ ] Load more

毛遂自荐一下自己写的上传组件,样式和交互基本是按照WeUI来实现,已经在公司的实际项目上使用了 https://github.com/eJayYoung/vux-uploader-component 目前的需求是想增强图片预览功能,想引用Previewer,看能不能merge进去呢?