介绍

cube-ui 是基于 Vue.js 实现的精致移动端组件库。

特性

  • 质量可靠

由滴滴内部组件库精简提炼而来,经历了业务一年多的考验,并且每个组件都有充分单元测试,为后续集成提供保障。

  • 体验极致

以迅速响应、动画流畅、接近原生为目标,在交互体验方面追求极致。

  • 标准规范

遵循统一的设计交互标准,高度还原设计效果;接口标准化,统一规范使用方式,开发更加简单高效。

  • 扩展性强

支持按需引入和后编译,轻量灵活;扩展性强,可以方便地基于现有组件实现二次开发。

组件

基础

弹层

组件调用:

  1. <template>
  2. <cube-button @click="showToast">show toast</cube-button>
  3. <cube-toast ref="toast" :txt="toastTxt"></cube-toast>
  4. </template>
  5. <script>
  6. export default {
  7. data() {
  8. return {
  9. toastTxt: 'toast content'
  10. }
  11. },
  12. methods: {
  13. showToast() {
  14. this.- refs.toast.show()
  15. }
  16. }
  17. }
  18. </script>

API 调用:

  1. <template>
  2. <cube-button @click="showToast">show toast</cube-button>
  3. </template>
  4. <script>
  5. export default {
  6. data() {
  7. return {
  8. toastTxt: 'toast content'
  9. }
  10. },
  11. methods: {
  12. showToast() {
  13. this.- createToast({
  14. txt: this.toastTxt
  15. }).show()
  16. }
  17. }
  18. }
  19. </script>

两种方式都可以,但是我们推荐后者,通过 - createXxYy API 来调用;通过 API 调用的话,这个弹框是附加到 body 元素下的,这样的好处是可以不受外层样式的影响,因为组件调用的话,很容易受到外层 transform, overflow 等样式的影响。

注意这个 API 的名字的组合就是:- create + - {组件名字},例如 ActionSheet 组件的话,API 名字就是 - createActionSheet

滚动

高级

模块

除了组件之外,cube-ui 还有一些特殊的模块。

style

样式部分,如果你是在按需引入使用的场景下,那么建议在入口文件处也要引入这个模块,因为它包含基础的 reset、基础通用样式以及内置 icon。

详见 style 模块

create-api

有些时候,开发者可能也需要自己封装的组件支持 API 式调用,此时可以通过引入 create-api 模块或者通过全局的 Cube.createAPI 接口来达到封装目的。

详见 create-api 模块

better-scroll

better-scroll 是组件库依赖的一个库,为了避免重复引入问题,我们暴露出了这个模块。

详见 better-scroll 模块

原文:

https://didi.github.io/cube-ui/#/zh-CN/docs/introduction