From 450f29d93a005867ae81aaa0c2f730ef3d43f2b4 Mon Sep 17 00:00:00 2001 From: hanyuxinting Date: Thu, 26 Dec 2024 12:00:33 +0800 Subject: [PATCH 1/2] feat: intput v15 --- migrate-from-v2.md | 4 ++ src/packages/formitem/formitem.scss | 2 + src/packages/input/demos/h5/demo1.tsx | 6 ++- src/packages/input/demos/h5/demo10.tsx | 6 +-- src/packages/input/demos/h5/demo11.tsx | 6 +-- src/packages/input/demos/h5/demo13.tsx | 38 +++++++++---------- src/packages/input/demos/h5/demo4.tsx | 6 +-- src/packages/input/demos/h5/demo5.tsx | 8 ++-- src/packages/input/demos/h5/demo6.tsx | 6 +-- src/packages/input/demos/h5/demo7.tsx | 26 ++++++------- src/packages/input/demos/h5/demo8.tsx | 34 ++++++++--------- src/packages/input/demos/h5/demo9.tsx | 38 +++++++++---------- src/packages/input/demos/taro/demo1.tsx | 12 ++---- src/packages/input/demos/taro/demo10.tsx | 13 ++----- src/packages/input/demos/taro/demo11.tsx | 18 +++------ src/packages/input/demos/taro/demo12.tsx | 2 +- src/packages/input/demos/taro/demo13.tsx | 47 +++++++++++------------- src/packages/input/demos/taro/demo14.tsx | 1 - src/packages/input/demos/taro/demo2.tsx | 6 +-- src/packages/input/demos/taro/demo3.tsx | 1 - src/packages/input/demos/taro/demo4.tsx | 30 ++++----------- src/packages/input/demos/taro/demo5.tsx | 10 ++--- src/packages/input/demos/taro/demo6.tsx | 19 +++------- src/packages/input/demos/taro/demo7.tsx | 7 +--- src/packages/input/demos/taro/demo8.tsx | 45 +++++++++++------------ src/packages/input/demos/taro/demo9.tsx | 46 ++++++++++------------- src/packages/input/input.scss | 37 ++++++++++++------- src/packages/input/input.taro.tsx | 10 ++++- src/packages/input/input.tsx | 10 ++++- src/styles/variables.scss | 14 +++---- 30 files changed, 233 insertions(+), 275 deletions(-) diff --git a/migrate-from-v2.md b/migrate-from-v2.md index 6e386b6808..576f9cc8bf 100644 --- a/migrate-from-v2.md +++ b/migrate-from-v2.md @@ -417,6 +417,10 @@ plugins: [ #### Input +- 新增 `plain` 属性,标记为 纯文本型;该值默认为false,标记为 container 容器型; +- 区分了 readonly 和 disabled 的样式; +- 删除一些样式变量,统一到由通用变量控制,如`$input-color`、`$input-disabled-color` + #### InputNumber - 增加 `allowEmpty`, 用于允许内容是否为空 diff --git a/src/packages/formitem/formitem.scss b/src/packages/formitem/formitem.scss index 77678cc0c7..fe248e72b4 100644 --- a/src/packages/formitem/formitem.scss +++ b/src/packages/formitem/formitem.scss @@ -1,5 +1,7 @@ .nut-form-item { display: flex; + align-items: center; + padding: 4px 12px; &.error { &.line { diff --git a/src/packages/input/demos/h5/demo1.tsx b/src/packages/input/demos/h5/demo1.tsx index 82871f8551..7df8ef3c07 100644 --- a/src/packages/input/demos/h5/demo1.tsx +++ b/src/packages/input/demos/h5/demo1.tsx @@ -1,10 +1,12 @@ import React from 'react' -import { Input } from '@nutui/nutui-react' +import { Divider, Input } from '@nutui/nutui-react' const Demo1 = () => { return ( <> - + + + ) } diff --git a/src/packages/input/demos/h5/demo10.tsx b/src/packages/input/demos/h5/demo10.tsx index 58d5613b42..a3d40355fd 100644 --- a/src/packages/input/demos/h5/demo10.tsx +++ b/src/packages/input/demos/h5/demo10.tsx @@ -1,17 +1,17 @@ import React from 'react' -import { Input } from '@nutui/nutui-react' +import { Input, Space } from '@nutui/nutui-react' const Demo10 = () => { const formatter = (value: string) => value.replace(/\d/g, '') return ( - <> + - + ) } export default Demo10 diff --git a/src/packages/input/demos/h5/demo11.tsx b/src/packages/input/demos/h5/demo11.tsx index 8b73a36b5b..a5276fda2e 100644 --- a/src/packages/input/demos/h5/demo11.tsx +++ b/src/packages/input/demos/h5/demo11.tsx @@ -1,12 +1,12 @@ import React from 'react' -import { Input } from '@nutui/nutui-react' +import { Input, Space } from '@nutui/nutui-react' const Demo11 = () => { return ( - <> + - + ) } export default Demo11 diff --git a/src/packages/input/demos/h5/demo13.tsx b/src/packages/input/demos/h5/demo13.tsx index 60e34ecf2c..bc7968275f 100644 --- a/src/packages/input/demos/h5/demo13.tsx +++ b/src/packages/input/demos/h5/demo13.tsx @@ -4,27 +4,25 @@ import { Tips } from '@nutui/icons-react' const Demo13 = () => { return ( - <> -
- - -
- -
+
+ + +
+
- +
) } export default Demo13 diff --git a/src/packages/input/demos/h5/demo4.tsx b/src/packages/input/demos/h5/demo4.tsx index 08ba29e80d..db78cf4c13 100644 --- a/src/packages/input/demos/h5/demo4.tsx +++ b/src/packages/input/demos/h5/demo4.tsx @@ -1,14 +1,14 @@ import React from 'react' -import { Input } from '@nutui/nutui-react' +import { Input, Space } from '@nutui/nutui-react' const Demo4 = () => { return ( - <> + - + ) } export default Demo4 diff --git a/src/packages/input/demos/h5/demo5.tsx b/src/packages/input/demos/h5/demo5.tsx index e30fb98637..49ced99272 100644 --- a/src/packages/input/demos/h5/demo5.tsx +++ b/src/packages/input/demos/h5/demo5.tsx @@ -1,12 +1,12 @@ import React from 'react' -import { Input } from '@nutui/nutui-react' +import { Input, Space } from '@nutui/nutui-react' const Demo5 = () => { return ( - <> - + + - + ) } export default Demo5 diff --git a/src/packages/input/demos/h5/demo6.tsx b/src/packages/input/demos/h5/demo6.tsx index 442499fb60..1ac0c3563b 100644 --- a/src/packages/input/demos/h5/demo6.tsx +++ b/src/packages/input/demos/h5/demo6.tsx @@ -1,13 +1,13 @@ import React from 'react' -import { Input } from '@nutui/nutui-react' +import { Input, Space } from '@nutui/nutui-react' import { Close } from '@nutui/icons-react' const Demo6 = () => { return ( - <> + } placeholder="显示清除图标" /> - + ) } export default Demo6 diff --git a/src/packages/input/demos/h5/demo7.tsx b/src/packages/input/demos/h5/demo7.tsx index 55d08c272a..d06187dc53 100644 --- a/src/packages/input/demos/h5/demo7.tsx +++ b/src/packages/input/demos/h5/demo7.tsx @@ -4,20 +4,18 @@ import Form from '@/packages/form' const Demo7 = () => { return ( - <> -
- - { - console.log('change value:', val) - }} - /> - -
- +
+ + { + console.log('change value:', val) + }} + /> + +
) } export default Demo7 diff --git a/src/packages/input/demos/h5/demo8.tsx b/src/packages/input/demos/h5/demo8.tsx index 430b78a599..ba77725299 100644 --- a/src/packages/input/demos/h5/demo8.tsx +++ b/src/packages/input/demos/h5/demo8.tsx @@ -4,25 +4,23 @@ import { Input } from '@nutui/nutui-react' const Demo8 = () => { const [currentLength, setCurrentLength] = useState(0) return ( - <> -
- setCurrentLength(val.length)} - /> -
- {currentLength} / 20 -
+
+ setCurrentLength(val.length)} + /> +
+ {currentLength} / 20
- +
) } export default Demo8 diff --git a/src/packages/input/demos/h5/demo9.tsx b/src/packages/input/demos/h5/demo9.tsx index c8c4b806f5..29671d4970 100644 --- a/src/packages/input/demos/h5/demo9.tsx +++ b/src/packages/input/demos/h5/demo9.tsx @@ -5,30 +5,26 @@ import { Eye, Marshalling } from '@nutui/icons-react' const Demo9 = () => { const [inputType, setInputType] = useState('password') return ( - <> +
+
setInputType(inputType === 'text' ? 'password' : 'text')} > - -
- setInputType(inputType === 'text' ? 'password' : 'text') - } - > - {inputType === 'text' ? ( - - ) : ( - - )} -
+ {inputType === 'text' ? ( + + ) : ( + + )}
- +
) } export default Demo9 diff --git a/src/packages/input/demos/taro/demo1.tsx b/src/packages/input/demos/taro/demo1.tsx index 0596c0414c..443c596372 100644 --- a/src/packages/input/demos/taro/demo1.tsx +++ b/src/packages/input/demos/taro/demo1.tsx @@ -1,16 +1,12 @@ import React from 'react' -import { Input } from '@nutui/nutui-react-taro' +import { Divider, Input } from '@nutui/nutui-react-taro' const Demo1 = () => { return ( <> - { - console.log('onChange', v) - }} - /> + + + ) } diff --git a/src/packages/input/demos/taro/demo10.tsx b/src/packages/input/demos/taro/demo10.tsx index d96ff4ecae..20ad48abb9 100644 --- a/src/packages/input/demos/taro/demo10.tsx +++ b/src/packages/input/demos/taro/demo10.tsx @@ -1,22 +1,17 @@ import React from 'react' -import { Input } from '@nutui/nutui-react-taro' +import { Input, Space } from '@nutui/nutui-react-taro' const Demo10 = () => { const formatter = (value: string) => value.replace(/\d/g, '') return ( - <> - + + - + ) } export default Demo10 diff --git a/src/packages/input/demos/taro/demo11.tsx b/src/packages/input/demos/taro/demo11.tsx index 5e6f9ad7e3..77d3108a5f 100644 --- a/src/packages/input/demos/taro/demo11.tsx +++ b/src/packages/input/demos/taro/demo11.tsx @@ -1,20 +1,12 @@ import React from 'react' -import { Input } from '@nutui/nutui-react-taro' +import { Input, Space } from '@nutui/nutui-react-taro' const Demo11 = () => { return ( - <> - - - + + + + ) } export default Demo11 diff --git a/src/packages/input/demos/taro/demo12.tsx b/src/packages/input/demos/taro/demo12.tsx index c3c757fe0a..d7021976be 100644 --- a/src/packages/input/demos/taro/demo12.tsx +++ b/src/packages/input/demos/taro/demo12.tsx @@ -4,7 +4,7 @@ import { Input } from '@nutui/nutui-react-taro' const Demo12 = () => { return ( <> - + ) } diff --git a/src/packages/input/demos/taro/demo13.tsx b/src/packages/input/demos/taro/demo13.tsx index a0c271a84a..4477e7e17c 100644 --- a/src/packages/input/demos/taro/demo13.tsx +++ b/src/packages/input/demos/taro/demo13.tsx @@ -6,38 +6,35 @@ import pxTransform from '@/utils/px-transform' const Demo13 = () => { return ( - <> + + + - - - - - + - + ) } export default Demo13 diff --git a/src/packages/input/demos/taro/demo14.tsx b/src/packages/input/demos/taro/demo14.tsx index 9a0e3660c2..def6bba07b 100644 --- a/src/packages/input/demos/taro/demo14.tsx +++ b/src/packages/input/demos/taro/demo14.tsx @@ -7,7 +7,6 @@ const Demo11 = () => { ) diff --git a/src/packages/input/demos/taro/demo2.tsx b/src/packages/input/demos/taro/demo2.tsx index 9f82674a08..89c1d9b50c 100644 --- a/src/packages/input/demos/taro/demo2.tsx +++ b/src/packages/input/demos/taro/demo2.tsx @@ -4,11 +4,7 @@ import { Input } from '@nutui/nutui-react-taro' const Demo2 = () => { return ( <> - + ) } diff --git a/src/packages/input/demos/taro/demo3.tsx b/src/packages/input/demos/taro/demo3.tsx index fa9fb055b9..cceac2a656 100644 --- a/src/packages/input/demos/taro/demo3.tsx +++ b/src/packages/input/demos/taro/demo3.tsx @@ -9,7 +9,6 @@ const Demo3 = () => { value={val} onChange={(val) => setVal(val)} placeholder="请输入文本" - placeholderTextColor="#757575" /> ) diff --git a/src/packages/input/demos/taro/demo4.tsx b/src/packages/input/demos/taro/demo4.tsx index 2b9cd3f063..213bf9afb9 100644 --- a/src/packages/input/demos/taro/demo4.tsx +++ b/src/packages/input/demos/taro/demo4.tsx @@ -1,30 +1,14 @@ import React from 'react' -import { Input } from '@nutui/nutui-react-taro' +import { Input, Space } from '@nutui/nutui-react-taro' const Demo4 = () => { return ( - <> - - - - - + + + + + + ) } export default Demo4 diff --git a/src/packages/input/demos/taro/demo5.tsx b/src/packages/input/demos/taro/demo5.tsx index 66b318076c..6a3b0fd556 100644 --- a/src/packages/input/demos/taro/demo5.tsx +++ b/src/packages/input/demos/taro/demo5.tsx @@ -1,12 +1,12 @@ import React from 'react' -import { Input } from '@nutui/nutui-react-taro' +import { Input, Space } from '@nutui/nutui-react-taro' const Demo5 = () => { return ( - <> - - - + + + + ) } export default Demo5 diff --git a/src/packages/input/demos/taro/demo6.tsx b/src/packages/input/demos/taro/demo6.tsx index dc0452bce8..d97f34afee 100644 --- a/src/packages/input/demos/taro/demo6.tsx +++ b/src/packages/input/demos/taro/demo6.tsx @@ -1,22 +1,13 @@ import React from 'react' -import { Input } from '@nutui/nutui-react-taro' +import { Input, Space } from '@nutui/nutui-react-taro' import { Close } from '@nutui/icons-react-taro' const Demo6 = () => { return ( - <> - - } - placeholder="显示清除图标" - placeholderTextColor="#757575" - /> - + + + } placeholder="显示清除图标" /> + ) } export default Demo6 diff --git a/src/packages/input/demos/taro/demo7.tsx b/src/packages/input/demos/taro/demo7.tsx index 6e49144e79..3ef4ee3cd4 100644 --- a/src/packages/input/demos/taro/demo7.tsx +++ b/src/packages/input/demos/taro/demo7.tsx @@ -15,12 +15,7 @@ const Demo7 = () => { backgroundColor: '#ffffff', }} > - +