Browse Source

feat: Cascader 功能补齐 (#1238)

* feat: 冲突解决 (#2)

* fix(uploader): taro h5 env upload error #1096

* fix: taro 3.4.6 sass calc error #1200

* fix(uploader): taro env formdata type error

* chore: add international components signature

* chore: add international components ecard

* chore: add international components timeselect

* chore: add international components sku

* fix: demo textarea 自适应 (#1201)

* feat: add translations chinese traditional

* docs: open international

* fix: input show-word-limit default false (#1203)

* refactor(circleprogress): add features (#1204)

* fix(popup): 修复popup在Taro转H5下的渲染问题

* feat: avatar能力补齐、input doc文档更新 (#1195)

* fix: 修改input单元测试

* fix: 增加avatar group

* fix: 更新input md

* fix: avatar能力补齐

* fix: avatar能力补齐、适配taro

* feat: 迁移 AddressList、Category 组件,适配taro

* fix: 修改input md

Co-authored-by: richard1015 <51844712@qq.com>

* chore: add international components addresslist

Co-authored-by: richard1015 <51844712@qq.com>
Co-authored-by: Ymm <being0008@163.com>
Co-authored-by: Lei Wang <wlchn@qq.com>
Co-authored-by: Drjingfubo <50685476+Drjingfubo@users.noreply.github.com>
Co-authored-by: suzigang <1039168735@qq.com>
Co-authored-by: ailululu <912429321@qq.com>

* feat: picker与DatePicker新增slot插槽

* fix: datepicker 问题修改

* fix: infiniteloading issue 问题修改(#1189)

* fix: countdown 问题修改

* feat: 冲突解决

* feat: 初版

* feat: countdown 单元测试

* feat: 文档补齐

* fix: datepicker 初始化时平铺展示 bug 修改

* feat: git action 增加 doc.en-US 文件复制

* fix: 单元测试

* fix: cascader 组件完善

* feat: cascader taro 适配

Co-authored-by: richard1015 <51844712@qq.com>
Co-authored-by: Ymm <being0008@163.com>
Co-authored-by: Lei Wang <wlchn@qq.com>
Co-authored-by: Drjingfubo <50685476+Drjingfubo@users.noreply.github.com>
Co-authored-by: suzigang <1039168735@qq.com>
Co-authored-by: ailululu <912429321@qq.com>
yangxiaolu1993 3 years ago
parent
commit
d4c8904a91

+ 2 - 0
src/packages/__VUE/cascader/demo.vue

@@ -19,6 +19,8 @@
           @change="events.change"
           @path-change="events.pathChange"
           :options="demo1.options"
+          close-icon="heart"
+          close-icon-position="top-left"
         ></nut-cascader>
       </nut-form-item>
     </nut-form>

+ 4 - 0
src/packages/__VUE/cascader/doc.md

@@ -429,6 +429,10 @@ export default {
 | text-key       | 自定义`options`结构中`text`的字段                     | String   | -      |
 | children-key   | 自定义`options`结构中`children`的字段                 | String   | -      |
 | convert-config | 当options为可转换为树形结构的扁平结构时,配置转换规则 | Object   | -      |
+| title | 标题 | String   | ''      |
+| close-icon-position | 取消按钮位置,继承 Popup 组件 | String   | "top-right"      |
+| close-icon | 自定义关闭按钮,继承 Popup 组件 | String   | "close"     |
+| closeable | 是否显示关闭按钮,继承 Popup 组件 | Boolean   | true     |
 
 ### Events
 

+ 6 - 2
src/packages/__VUE/cascader/index.taro.vue

@@ -4,11 +4,13 @@
     position="bottom"
     pop-class="nut-cascader__popup"
     round
-    :closeable="true"
+    :closeable="!closeable"
+    :close-icon="closeIcon"
     :destroy-on-close="false"
+    :close-icon-position="closeIconPosition"
   >
     <template v-if="title">
-      <view class="nut-cascader__bar">{{ title }}</view>
+      <view class="nut-cascader__bar" v-html="title"></view>
     </template>
 
     <nut-cascader-item
@@ -30,6 +32,7 @@
 import { watch, ref, Ref, computed } from 'vue';
 import { CascaderValue, CascaderOption } from './types';
 import { createComponent } from '@/packages/utils/create';
+import { popupProps } from '../popup/index.vue';
 const { create } = createComponent('cascader');
 import CascaderItem from './cascader-item.vue';
 
@@ -38,6 +41,7 @@ export default create({
     [CascaderItem.name]: CascaderItem
   },
   props: {
+    ...popupProps,
     modelValue: Array,
     visible: Boolean,
     title: String,

+ 6 - 2
src/packages/__VUE/cascader/index.vue

@@ -4,11 +4,13 @@
     position="bottom"
     pop-class="nut-cascader__popup"
     round
-    :closeable="true"
+    :closeable="!closeable"
+    :close-icon="closeIcon"
     :destroy-on-close="false"
+    :close-icon-position="closeIconPosition"
   >
     <template v-if="title">
-      <view class="nut-cascader__bar">{{ title }}</view>
+      <view class="nut-cascader__bar" v-html="title"></view>
     </template>
 
     <nut-cascader-item
@@ -29,6 +31,7 @@
 <script lang="ts">
 import { watch, ref, Ref, computed } from 'vue';
 import { CascaderValue, CascaderOption } from './types';
+import { popupProps } from '../popup/index.vue';
 import { createComponent } from '@/packages/utils/create';
 const { create } = createComponent('cascader');
 import CascaderItem from './cascader-item.vue';
@@ -38,6 +41,7 @@ export default create({
     [CascaderItem.name]: CascaderItem
   },
   props: {
+    ...popupProps,
     modelValue: Array,
     visible: Boolean,
     title: String,