From 21698de271a6ca6906aa6a59dc5c664c88b91942 Mon Sep 17 00:00:00 2001 From: Wanli Song Date: Thu, 1 Jul 2021 23:57:16 +0800 Subject: [PATCH] feat(spin): icon slot, rotate prop (#289) * feat(spin): add icon slot * doc(changelog * fix(spin): icon slot logic * test(spin): add icon slot test * fix(spin): refact code * feat(spin): add rotate prop Co-authored-by: wanli.song@tusimple.ai Co-authored-by: 07akioni <07akioni2@gmail.com> --- CHANGELOG.en-US.md | 2 + CHANGELOG.zh-CN.md | 2 + src/_internal/loading/src/Loading.tsx | 13 +++- .../loading/src/styles/index.cssr.ts | 60 ++++++++++++------- src/spin/demos/enUS/customize-icon.demo.md | 40 +++++++++++++ src/spin/demos/enUS/index.demo-entry.md | 3 + src/spin/demos/zhCN/customize-icon.demo.md | 40 +++++++++++++ src/spin/demos/zhCN/index.demo-entry.md | 3 + src/spin/src/Spin.tsx | 14 ++++- src/spin/tests/Spin.spec.ts | 29 +++++++++ 10 files changed, 181 insertions(+), 25 deletions(-) create mode 100644 src/spin/demos/enUS/customize-icon.demo.md create mode 100644 src/spin/demos/zhCN/customize-icon.demo.md diff --git a/CHANGELOG.en-US.md b/CHANGELOG.en-US.md index 7e0940d79..5aa86530e 100644 --- a/CHANGELOG.en-US.md +++ b/CHANGELOG.en-US.md @@ -13,6 +13,8 @@ - `n-upload` add `before-upload` prop. - `n-image` add `alt` prop. - Support the enter key on the numeric keypad. +- `n-spin` support `icon` slot for icon customizing, closes[#260](https://github.com/TuSimple/naive-ui/issues/260). +- `n-spin` add `rotate` prop fro slot icon to rotate. - `n-form` export `FormItemRule` & `FormRules` type. ### Fixes diff --git a/CHANGELOG.zh-CN.md b/CHANGELOG.zh-CN.md index 6e4c778db..494ea6c4d 100644 --- a/CHANGELOG.zh-CN.md +++ b/CHANGELOG.zh-CN.md @@ -13,6 +13,8 @@ - `n-upload` 新增 `before-upload` 属性 - `n-image` 新增 `alt` 属性. - 支持小键盘的 enter 键 +- `n-spin` 支持 `icon` 插槽为了自定义加载图标,closes[#260](https://github.com/TuSimple/naive-ui/issues/260) +- `n-spin` 新增 `rotate` 属性控制自定义加载图标是否有旋转动画 - `n-form` 导出 `FormItemRule` & `FormRules` 类型 ### Fixes diff --git a/src/_internal/loading/src/Loading.tsx b/src/_internal/loading/src/Loading.tsx index cbca58346..b6857c406 100644 --- a/src/_internal/loading/src/Loading.tsx +++ b/src/_internal/loading/src/Loading.tsx @@ -33,13 +33,17 @@ export default defineComponent({ show: { type: Boolean, default: true + }, + rotate: { + type: Boolean, + default: true } }, setup (props) { useStyle('BaseLoading', style, toRef(props, 'clsPrefix')) }, render () { - const { clsPrefix, radius, strokeWidth, stroke, scale } = this + const { clsPrefix, radius, strokeWidth, stroke, scale, $slots } = this const scaledRadius = radius / scale return (