diff --git a/src/config.json b/src/config.json index c1b79f73c8822092cfa6c85f22b75e14cbee84f6..386cd976877b81846413f59d5dd25cf2209e41dd 100644 --- a/src/config.json +++ b/src/config.json @@ -171,6 +171,17 @@ "sort": 14, "show": true, "author": "szg2008" + }, + { + "version": "3.0.0", + "name": "Divider", + "taro": true, + "type": "component", + "cName": "分割线", + "desc": "用于将内容分隔为多个区域。", + "sort": 23, + "show": true, + "author": "yangjinjun3" } ] }, diff --git a/src/packages/__VUE/divider/demo.vue b/src/packages/__VUE/divider/demo.vue new file mode 100644 index 0000000000000000000000000000000000000000..5d2e039554b8f542cb2b433850f2362735d310a8 --- /dev/null +++ b/src/packages/__VUE/divider/demo.vue @@ -0,0 +1,46 @@ + + + + + diff --git a/src/packages/__VUE/divider/doc.md b/src/packages/__VUE/divider/doc.md new file mode 100644 index 0000000000000000000000000000000000000000..dd953b230ad1fbf9a3a8c16ea4558b04435d0aa7 --- /dev/null +++ b/src/packages/__VUE/divider/doc.md @@ -0,0 +1,78 @@ +# Divider 分割线 + +### 介绍 + +用于将内容分隔为多个区域。 + +### 安装 +``` javascript +import { createApp } from 'vue'; +// vue +import { Divider } from '@nutui/nutui'; +// taro +import { Divider } from '@nutui/nutui-taro'; + +const app = createApp(); +app.use(Divider); +``` + + +## 代码演示 + +### 基础用法 + +默认渲染一条水平分割线。 + +``` html + +``` + +### 展示文本 + +通过插槽在可以分割线中间插入内容。 + +``` html +文本 +``` + +### 内容位置 + +通过 content-position 指定内容所在位置。 + +``` html +文本 +文本 +``` + +### 虚线 + +添加 dashed 属性使分割线渲染为虚线。 + +``` html + +``` + +### 自定义样式 + +可以直接通过 style 属性设置分割线的样式。 + +``` html +文本 +``` + +## API + +### Props + +| 参数 | 说明 | 类型 | 默认值 | +|--------------|----------------------------------|--------|------------------| +| dashed | 是否使用虚线 | Boolean | false | +| hairline | 是否使用 0.5px 线 | Boolean | true | +| content-position | 内容位置,可选值为left right | String | center | + +### Slots + +| 名称 | 说明 | +|--------|----------------| +| default | 内容 | + \ No newline at end of file diff --git a/src/packages/__VUE/divider/index.scss b/src/packages/__VUE/divider/index.scss new file mode 100644 index 0000000000000000000000000000000000000000..142035f9dde98db49c957352a066f140c1e49a25 --- /dev/null +++ b/src/packages/__VUE/divider/index.scss @@ -0,0 +1,54 @@ +.nut-divider { + display: flex; + align-items: center; + font-size: 28px; + color: #909ca4; + margin: 16px 0; + width: 100%; + + &::before, + &::after { + content: ''; + border: 1px solid currentColor; + border-width: 1px 0 0; + flex: 1; + } + + &.nut-divider-center, + &.nut-divider-left, + &.nut-divider-right { + &::before { + margin-right: 16px; + } + + &::after { + margin-left: 16px; + } + } + + &.nut-divider-left { + &::before { + max-width: 10%; + } + } + + &.nut-divider-right { + &::after { + max-width: 10%; + } + } + + &.nut-divider-dashed { + &::before, + &::after { + border-style: dashed; + } + } + + &.nut-divider-hairline { + &::before, + &::after { + transform: scaleY(0.5); + } + } +} diff --git a/src/packages/__VUE/divider/index.taro.vue b/src/packages/__VUE/divider/index.taro.vue new file mode 100644 index 0000000000000000000000000000000000000000..fd19012a1f71ce2e26e3ce0ca9a1e7e67cb40f4f --- /dev/null +++ b/src/packages/__VUE/divider/index.taro.vue @@ -0,0 +1,49 @@ + + + + diff --git a/src/packages/__VUE/divider/index.vue b/src/packages/__VUE/divider/index.vue new file mode 100644 index 0000000000000000000000000000000000000000..fd19012a1f71ce2e26e3ce0ca9a1e7e67cb40f4f --- /dev/null +++ b/src/packages/__VUE/divider/index.vue @@ -0,0 +1,49 @@ + + + + diff --git a/src/sites/mobile-taro/vue/src/app.config.ts b/src/sites/mobile-taro/vue/src/app.config.ts index 25a8ac90a169133ec6a60052747cb54274d9524b..989dad0061d2f26e744bf4673535366f62760160 100644 --- a/src/sites/mobile-taro/vue/src/app.config.ts +++ b/src/sites/mobile-taro/vue/src/app.config.ts @@ -35,7 +35,8 @@ export default { 'pages/price/index', 'pages/button/index', 'pages/avatar/index', - 'pages/overlay/index' + 'pages/overlay/index', + 'pages/divider/index' ] }, { diff --git a/src/sites/mobile-taro/vue/src/base/pages/divider/index.config.ts b/src/sites/mobile-taro/vue/src/base/pages/divider/index.config.ts new file mode 100644 index 0000000000000000000000000000000000000000..4a0dcaac5baa09958c3b97cc5c51be8537b7570d --- /dev/null +++ b/src/sites/mobile-taro/vue/src/base/pages/divider/index.config.ts @@ -0,0 +1,3 @@ +export default { + navigationBarTitleText: 'Divider' +}; diff --git a/src/sites/mobile-taro/vue/src/base/pages/divider/index.vue b/src/sites/mobile-taro/vue/src/base/pages/divider/index.vue new file mode 100644 index 0000000000000000000000000000000000000000..b17df91041c296e8dbd228ca893dc097308fa6a6 --- /dev/null +++ b/src/sites/mobile-taro/vue/src/base/pages/divider/index.vue @@ -0,0 +1,44 @@ + + + + +