@mijadesign/nut-mcp 1.0.0-alpha.0
This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
- package/README.md +147 -0
- package/dist/index.d.ts +2 -0
- package/dist/index.js +16 -0
- package/dist/services/aliases.service.d.ts +1 -0
- package/dist/services/aliases.service.js +19 -0
- package/dist/services/doc-parser.service.d.ts +3 -0
- package/dist/services/doc-parser.service.js +162 -0
- package/dist/services/index.services.d.ts +3 -0
- package/dist/services/index.services.js +71 -0
- package/dist/services/paths.service.d.ts +5 -0
- package/dist/services/paths.service.js +18 -0
- package/dist/tools/base.tool.d.ts +8 -0
- package/dist/tools/base.tool.js +27 -0
- package/dist/tools/get-component-doc.tool.d.ts +12 -0
- package/dist/tools/get-component-doc.tool.js +40 -0
- package/dist/tools/index.d.ts +4 -0
- package/dist/tools/index.js +4 -0
- package/dist/tools/list-components.tool.d.ts +8 -0
- package/dist/tools/list-components.tool.js +32 -0
- package/dist/tools/search-components.tool.d.ts +12 -0
- package/dist/tools/search-components.tool.js +61 -0
- package/dist/types/index.d.ts +33 -0
- package/dist/types/index.js +1 -0
- package/docs/docs/aliases.json +59 -0
- package/docs/docs/components/base/button/index.md +415 -0
- package/docs/docs/components/base/cell/index.md +279 -0
- package/docs/docs/components/base/configprovider/index.md +215 -0
- package/docs/docs/components/base/image/index.md +282 -0
- package/docs/docs/components/base/overlay/index.md +288 -0
- package/docs/docs/components/dentry/cascader/index.md +1080 -0
- package/docs/docs/components/dentry/checkbox/index.md +842 -0
- package/docs/docs/components/dentry/datepicker/index.md +489 -0
- package/docs/docs/components/dentry/form/index.md +457 -0
- package/docs/docs/components/dentry/input/index.md +257 -0
- package/docs/docs/components/dentry/picker/index.md +621 -0
- package/docs/docs/components/dentry/radio/index.md +364 -0
- package/docs/docs/components/dentry/searchbar/index.md +317 -0
- package/docs/docs/components/dentry/selector/index.md +295 -0
- package/docs/docs/components/dentry/switch/index.md +300 -0
- package/docs/docs/components/dentry/textarea/index.md +231 -0
- package/docs/docs/components/dentry/uploader/index.md +745 -0
- package/docs/docs/components/exhibition/collapse/index.md +339 -0
- package/docs/docs/components/exhibition/swiper/index.md +385 -0
- package/docs/docs/components/exhibition/tag/index.md +253 -0
- package/docs/docs/components/feedback/dialog/index.md +306 -0
- package/docs/docs/components/feedback/drag/index.md +164 -0
- package/docs/docs/components/feedback/empty/index.md +211 -0
- package/docs/docs/components/feedback/infiniteloading/index.md +397 -0
- package/docs/docs/components/feedback/noticebar/index.md +175 -0
- package/docs/docs/components/feedback/popup/index.md +563 -0
- package/docs/docs/components/feedback/pulltorefresh/index.md +254 -0
- package/docs/docs/components/feedback/toast/index.md +355 -0
- package/docs/docs/components/layout/divider/index.md +162 -0
- package/docs/docs/components/layout/grid/index.md +386 -0
- package/docs/docs/components/layout/space/index.md +196 -0
- package/docs/docs/components/nav/tabs/index.md +955 -0
- package/docs/docs/components-index.json +233 -0
- package/package.json +34 -0
|
@@ -0,0 +1,955 @@
|
|
|
1
|
+
---
|
|
2
|
+
order: 10
|
|
3
|
+
demoUrl: 'https://frontend.mishudata.com/mobile/demo/#/nav/pages/tabs/index'
|
|
4
|
+
group:
|
|
5
|
+
title: 导航组件
|
|
6
|
+
order: 4
|
|
7
|
+
---
|
|
8
|
+
|
|
9
|
+
# Tabs 选项卡切换 <Badge>2.0.0</Badge>
|
|
10
|
+
|
|
11
|
+
|
|
12
|
+
用于内容分类后的展示切换。
|
|
13
|
+
|
|
14
|
+
## 引入
|
|
15
|
+
|
|
16
|
+
```tsx
|
|
17
|
+
import { Tabs } from '@mijadesign/mjui-react-taro';
|
|
18
|
+
```
|
|
19
|
+
|
|
20
|
+
## 示例代码
|
|
21
|
+
|
|
22
|
+
### 基础用法
|
|
23
|
+
|
|
24
|
+
|
|
25
|
+
```tsx
|
|
26
|
+
import { Tabs } from '@mijadesign/mjui-react-taro'
|
|
27
|
+
import React, { useState } from 'react'
|
|
28
|
+
|
|
29
|
+
const Demo1 = () => {
|
|
30
|
+
const [tab1value, setTab1value] = useState<string | number>('0')
|
|
31
|
+
return (
|
|
32
|
+
<>
|
|
33
|
+
<Tabs
|
|
34
|
+
value={tab1value}
|
|
35
|
+
onChange={(value) => {
|
|
36
|
+
setTab1value(value)
|
|
37
|
+
}}
|
|
38
|
+
>
|
|
39
|
+
<Tabs.TabPane title="选项" />
|
|
40
|
+
<Tabs.TabPane title="选项" />
|
|
41
|
+
<Tabs.TabPane title="选项" />
|
|
42
|
+
</Tabs>
|
|
43
|
+
</>
|
|
44
|
+
)
|
|
45
|
+
}
|
|
46
|
+
export default Demo1
|
|
47
|
+
|
|
48
|
+
```
|
|
49
|
+
|
|
50
|
+
### 基础用法-微笑曲线
|
|
51
|
+
|
|
52
|
+
|
|
53
|
+
```tsx
|
|
54
|
+
import { Tabs } from '@mijadesign/mjui-react-taro'
|
|
55
|
+
import { Remind } from '@mijadesign/mobile-icons'
|
|
56
|
+
import { Text, View } from '@tarojs/components'
|
|
57
|
+
import React, { useState } from 'react'
|
|
58
|
+
|
|
59
|
+
const Demo2 = () => {
|
|
60
|
+
const [tabvalue, setTabvalue] = useState('c1')
|
|
61
|
+
const list = [
|
|
62
|
+
{
|
|
63
|
+
title: '选项',
|
|
64
|
+
paneKey: 'c1',
|
|
65
|
+
icon: <Remind />,
|
|
66
|
+
},
|
|
67
|
+
{
|
|
68
|
+
title: '选项',
|
|
69
|
+
paneKey: 'c2',
|
|
70
|
+
icon: <Remind />,
|
|
71
|
+
},
|
|
72
|
+
{
|
|
73
|
+
title: '选项',
|
|
74
|
+
paneKey: 'c3',
|
|
75
|
+
icon: <Remind />,
|
|
76
|
+
},
|
|
77
|
+
]
|
|
78
|
+
return (
|
|
79
|
+
<>
|
|
80
|
+
<Tabs
|
|
81
|
+
value={tabvalue}
|
|
82
|
+
title={() => {
|
|
83
|
+
return list.map((item) => (
|
|
84
|
+
<View
|
|
85
|
+
onClick={() => setTabvalue(item.paneKey)}
|
|
86
|
+
className={`nut-tabs-titles-item ${tabvalue === item.paneKey ? 'nut-tabs-titles-item-active' : ''}`}
|
|
87
|
+
key={item.paneKey}
|
|
88
|
+
>
|
|
89
|
+
<Text className="nut-tabs-titles-item-text">
|
|
90
|
+
<Text style={{ marginRight: '4px' }}>{item.icon}</Text>
|
|
91
|
+
{item.title}
|
|
92
|
+
</Text>
|
|
93
|
+
<Text className="nut-tabs-titles-item-line" />
|
|
94
|
+
</View>
|
|
95
|
+
))
|
|
96
|
+
}}
|
|
97
|
+
>
|
|
98
|
+
{list.map((item) => (
|
|
99
|
+
<Tabs.TabPane key={item.paneKey} value={item.paneKey}>
|
|
100
|
+
{item.title}
|
|
101
|
+
</Tabs.TabPane>
|
|
102
|
+
))}
|
|
103
|
+
</Tabs>
|
|
104
|
+
</>
|
|
105
|
+
)
|
|
106
|
+
}
|
|
107
|
+
export default Demo2
|
|
108
|
+
|
|
109
|
+
```
|
|
110
|
+
|
|
111
|
+
### 基础用法-简约模式
|
|
112
|
+
|
|
113
|
+
|
|
114
|
+
```tsx
|
|
115
|
+
import React, { useState } from 'react'
|
|
116
|
+
import { Tabs } from '@mijadesign/mjui-react-taro'
|
|
117
|
+
|
|
118
|
+
const Demo3 = () => {
|
|
119
|
+
const [tab1value, setTab1value] = useState<string | number>('0')
|
|
120
|
+
return (
|
|
121
|
+
<>
|
|
122
|
+
<Tabs
|
|
123
|
+
value={tab1value}
|
|
124
|
+
onChange={(value) => {
|
|
125
|
+
setTab1value(value)
|
|
126
|
+
}}
|
|
127
|
+
activeType="simple"
|
|
128
|
+
>
|
|
129
|
+
<Tabs.TabPane title="Tab 1"> Tab 1 </Tabs.TabPane>
|
|
130
|
+
<Tabs.TabPane title="Tab 2"> Tab 2 </Tabs.TabPane>
|
|
131
|
+
<Tabs.TabPane title="Tab 3"> Tab 3 </Tabs.TabPane>
|
|
132
|
+
</Tabs>
|
|
133
|
+
</>
|
|
134
|
+
)
|
|
135
|
+
}
|
|
136
|
+
export default Demo3
|
|
137
|
+
|
|
138
|
+
```
|
|
139
|
+
|
|
140
|
+
### 基础用法-卡片模式
|
|
141
|
+
|
|
142
|
+
|
|
143
|
+
```tsx
|
|
144
|
+
import { Tabs } from '@mijadesign/mjui-react-taro'
|
|
145
|
+
import React, { useState } from 'react'
|
|
146
|
+
|
|
147
|
+
const Demo4 = () => {
|
|
148
|
+
const [tab1value, setTab1value] = useState<string | number>('0')
|
|
149
|
+
return (
|
|
150
|
+
<>
|
|
151
|
+
<Tabs
|
|
152
|
+
fixWidth
|
|
153
|
+
value={tab1value}
|
|
154
|
+
onChange={(value) => {
|
|
155
|
+
setTab1value(value)
|
|
156
|
+
}}
|
|
157
|
+
>
|
|
158
|
+
<Tabs.TabPane title="选项123"> Tab 1 </Tabs.TabPane>
|
|
159
|
+
<Tabs.TabPane title="选项"> Tab 2 </Tabs.TabPane>
|
|
160
|
+
<Tabs.TabPane title="选项"> Tab 3 </Tabs.TabPane>
|
|
161
|
+
</Tabs>
|
|
162
|
+
</>
|
|
163
|
+
)
|
|
164
|
+
}
|
|
165
|
+
export default Demo4
|
|
166
|
+
|
|
167
|
+
```
|
|
168
|
+
|
|
169
|
+
### 基础用法-按钮模式
|
|
170
|
+
|
|
171
|
+
|
|
172
|
+
```tsx
|
|
173
|
+
import { Tabs, TabsProps } from '@mijadesign/mjui-react-taro'
|
|
174
|
+
import React, { FC, useState } from 'react'
|
|
175
|
+
|
|
176
|
+
const Demo5: FC<Partial<TabsProps>> = (props) => {
|
|
177
|
+
const [tab1value, setTab1value] = useState<string | number>('0')
|
|
178
|
+
return (
|
|
179
|
+
<>
|
|
180
|
+
<Tabs
|
|
181
|
+
value={tab1value}
|
|
182
|
+
onChange={(value) => {
|
|
183
|
+
setTab1value(value)
|
|
184
|
+
}}
|
|
185
|
+
activeType="button"
|
|
186
|
+
{...props}
|
|
187
|
+
>
|
|
188
|
+
<Tabs.TabPane title="选项" />
|
|
189
|
+
<Tabs.TabPane title="选项" />
|
|
190
|
+
<Tabs.TabPane title="选项" />
|
|
191
|
+
</Tabs>
|
|
192
|
+
</>
|
|
193
|
+
)
|
|
194
|
+
}
|
|
195
|
+
export default Demo5
|
|
196
|
+
|
|
197
|
+
```
|
|
198
|
+
|
|
199
|
+
### 基础用法-分割线模式
|
|
200
|
+
|
|
201
|
+
|
|
202
|
+
```tsx
|
|
203
|
+
import React, { useState } from 'react'
|
|
204
|
+
import { Tabs } from '@mijadesign/mjui-react-taro'
|
|
205
|
+
|
|
206
|
+
const Demo6 = () => {
|
|
207
|
+
const [tab1value, setTab1value] = useState<string | number>('0')
|
|
208
|
+
return (
|
|
209
|
+
<>
|
|
210
|
+
<Tabs
|
|
211
|
+
value={tab1value}
|
|
212
|
+
onChange={(value) => {
|
|
213
|
+
setTab1value(value)
|
|
214
|
+
}}
|
|
215
|
+
activeType="divider"
|
|
216
|
+
>
|
|
217
|
+
<Tabs.TabPane title="Tab 1"> Tab 1 </Tabs.TabPane>
|
|
218
|
+
<Tabs.TabPane title="Tab 2"> Tab 2 </Tabs.TabPane>
|
|
219
|
+
<Tabs.TabPane title="Tab 3"> Tab 3 </Tabs.TabPane>
|
|
220
|
+
</Tabs>
|
|
221
|
+
</>
|
|
222
|
+
)
|
|
223
|
+
}
|
|
224
|
+
export default Demo6
|
|
225
|
+
|
|
226
|
+
```
|
|
227
|
+
|
|
228
|
+
### Title 左对齐
|
|
229
|
+
|
|
230
|
+
|
|
231
|
+
```tsx
|
|
232
|
+
import React, { useState } from 'react'
|
|
233
|
+
import { Tabs } from '@mijadesign/mjui-react-taro'
|
|
234
|
+
|
|
235
|
+
const Demo7 = () => {
|
|
236
|
+
const [tab1value, setTab1value] = useState<string | number>('0')
|
|
237
|
+
return (
|
|
238
|
+
<>
|
|
239
|
+
<Tabs
|
|
240
|
+
value={tab1value}
|
|
241
|
+
onChange={(value) => {
|
|
242
|
+
setTab1value(value)
|
|
243
|
+
}}
|
|
244
|
+
align="left"
|
|
245
|
+
>
|
|
246
|
+
<Tabs.TabPane title="Tab 1"> Tab 1 </Tabs.TabPane>
|
|
247
|
+
<Tabs.TabPane title="Tab 2"> Tab 2 </Tabs.TabPane>
|
|
248
|
+
<Tabs.TabPane title="Tab 3"> Tab 3 </Tabs.TabPane>
|
|
249
|
+
</Tabs>
|
|
250
|
+
</>
|
|
251
|
+
)
|
|
252
|
+
}
|
|
253
|
+
export default Demo7
|
|
254
|
+
|
|
255
|
+
```
|
|
256
|
+
|
|
257
|
+
### 左对齐-卡片模式
|
|
258
|
+
|
|
259
|
+
|
|
260
|
+
```tsx
|
|
261
|
+
import React, { useState } from 'react'
|
|
262
|
+
import { Tabs } from '@mijadesign/mjui-react-taro'
|
|
263
|
+
|
|
264
|
+
const Demo8 = () => {
|
|
265
|
+
const [tab1value, setTab1value] = useState<string | number>('0')
|
|
266
|
+
return (
|
|
267
|
+
<>
|
|
268
|
+
<Tabs
|
|
269
|
+
value={tab1value}
|
|
270
|
+
activeType="card"
|
|
271
|
+
onChange={(value) => {
|
|
272
|
+
setTab1value(value)
|
|
273
|
+
}}
|
|
274
|
+
align="left"
|
|
275
|
+
>
|
|
276
|
+
<Tabs.TabPane title="Tab 1"> Tab 1 </Tabs.TabPane>
|
|
277
|
+
<Tabs.TabPane title="Tab 2"> Tab 2 </Tabs.TabPane>
|
|
278
|
+
<Tabs.TabPane title="Tab 3"> Tab 3 </Tabs.TabPane>
|
|
279
|
+
</Tabs>
|
|
280
|
+
</>
|
|
281
|
+
)
|
|
282
|
+
}
|
|
283
|
+
export default Demo8
|
|
284
|
+
|
|
285
|
+
```
|
|
286
|
+
|
|
287
|
+
### 左对齐-按钮模式
|
|
288
|
+
|
|
289
|
+
|
|
290
|
+
```tsx
|
|
291
|
+
import React, { useState } from 'react'
|
|
292
|
+
import { Tabs } from '@mijadesign/mjui-react-taro'
|
|
293
|
+
|
|
294
|
+
const Demo9 = () => {
|
|
295
|
+
const [tab1value, setTab1value] = useState<string | number>('0')
|
|
296
|
+
return (
|
|
297
|
+
<>
|
|
298
|
+
<Tabs
|
|
299
|
+
value={tab1value}
|
|
300
|
+
activeType="button"
|
|
301
|
+
onChange={(value) => {
|
|
302
|
+
setTab1value(value)
|
|
303
|
+
}}
|
|
304
|
+
align="left"
|
|
305
|
+
>
|
|
306
|
+
<Tabs.TabPane title="Tab 1"> Tab 1 </Tabs.TabPane>
|
|
307
|
+
<Tabs.TabPane title="Tab 2"> Tab 2 </Tabs.TabPane>
|
|
308
|
+
<Tabs.TabPane title="Tab 3"> Tab 3 </Tabs.TabPane>
|
|
309
|
+
</Tabs>
|
|
310
|
+
</>
|
|
311
|
+
)
|
|
312
|
+
}
|
|
313
|
+
export default Demo9
|
|
314
|
+
|
|
315
|
+
```
|
|
316
|
+
|
|
317
|
+
### 左对齐-分割线模式
|
|
318
|
+
|
|
319
|
+
|
|
320
|
+
```tsx
|
|
321
|
+
import React, { useState } from 'react'
|
|
322
|
+
import { Tabs } from '@mijadesign/mjui-react-taro'
|
|
323
|
+
|
|
324
|
+
const Demo10 = () => {
|
|
325
|
+
const [tab1value, setTab1value] = useState<string | number>('0')
|
|
326
|
+
return (
|
|
327
|
+
<>
|
|
328
|
+
<Tabs
|
|
329
|
+
value={tab1value}
|
|
330
|
+
activeType="divider"
|
|
331
|
+
onChange={(value) => {
|
|
332
|
+
setTab1value(value)
|
|
333
|
+
}}
|
|
334
|
+
align="left"
|
|
335
|
+
>
|
|
336
|
+
<Tabs.TabPane title="Tab 1"> Tab 1 </Tabs.TabPane>
|
|
337
|
+
<Tabs.TabPane title="Tab 2"> Tab 2 </Tabs.TabPane>
|
|
338
|
+
<Tabs.TabPane title="Tab 3"> Tab 3 </Tabs.TabPane>
|
|
339
|
+
</Tabs>
|
|
340
|
+
</>
|
|
341
|
+
)
|
|
342
|
+
}
|
|
343
|
+
export default Demo10
|
|
344
|
+
|
|
345
|
+
```
|
|
346
|
+
|
|
347
|
+
### 通过 value 匹配
|
|
348
|
+
|
|
349
|
+
|
|
350
|
+
```tsx
|
|
351
|
+
import React, { useState } from 'react'
|
|
352
|
+
import { Tabs } from '@mijadesign/mjui-react-taro'
|
|
353
|
+
|
|
354
|
+
const Demo11 = () => {
|
|
355
|
+
const [tab2value, setTab2value] = useState<string | number>('0')
|
|
356
|
+
return (
|
|
357
|
+
<>
|
|
358
|
+
<Tabs
|
|
359
|
+
value={tab2value}
|
|
360
|
+
onChange={(value) => {
|
|
361
|
+
setTab2value(value)
|
|
362
|
+
}}
|
|
363
|
+
>
|
|
364
|
+
<Tabs.TabPane title="Tab 1" value="0">
|
|
365
|
+
Tab 1
|
|
366
|
+
</Tabs.TabPane>
|
|
367
|
+
<Tabs.TabPane title="Tab 2" value="1" disabled>
|
|
368
|
+
Tab 2
|
|
369
|
+
</Tabs.TabPane>
|
|
370
|
+
<Tabs.TabPane title="Tab 3" value="2">
|
|
371
|
+
Tab 3
|
|
372
|
+
</Tabs.TabPane>
|
|
373
|
+
</Tabs>
|
|
374
|
+
</>
|
|
375
|
+
)
|
|
376
|
+
}
|
|
377
|
+
export default Demo11
|
|
378
|
+
|
|
379
|
+
```
|
|
380
|
+
|
|
381
|
+
### 滑动切换
|
|
382
|
+
|
|
383
|
+
|
|
384
|
+
```tsx
|
|
385
|
+
import { Swiper, Tabs } from '@mijadesign/mjui-react-taro'
|
|
386
|
+
import React, { useRef, useState } from 'react'
|
|
387
|
+
|
|
388
|
+
const Demo12 = () => {
|
|
389
|
+
const swiperRef = useRef<React.ElementRef<typeof Swiper> | null>(null)
|
|
390
|
+
const [tabIndex, setTabIndex] = useState<string | number>(0)
|
|
391
|
+
const contentStyle = { backgroundColor: '#fff', padding: '16px' }
|
|
392
|
+
return (
|
|
393
|
+
<>
|
|
394
|
+
<Tabs
|
|
395
|
+
value={tabIndex}
|
|
396
|
+
onChange={(page) => {
|
|
397
|
+
swiperRef.current?.to(page)
|
|
398
|
+
setTabIndex(page)
|
|
399
|
+
}}
|
|
400
|
+
>
|
|
401
|
+
<Tabs.TabPane title="Tab 1" />
|
|
402
|
+
<Tabs.TabPane title="Tab 2" />
|
|
403
|
+
<Tabs.TabPane title="Tab 3" />
|
|
404
|
+
</Tabs>
|
|
405
|
+
<Swiper
|
|
406
|
+
defaultValue={0}
|
|
407
|
+
loop={false}
|
|
408
|
+
ref={swiperRef}
|
|
409
|
+
height={50}
|
|
410
|
+
onChange={(e) => {
|
|
411
|
+
setTabIndex(e.detail.current)
|
|
412
|
+
}}
|
|
413
|
+
>
|
|
414
|
+
<Swiper.Item>
|
|
415
|
+
<div style={contentStyle}>Tab 1</div>
|
|
416
|
+
</Swiper.Item>
|
|
417
|
+
<Swiper.Item>
|
|
418
|
+
<div style={contentStyle}>Tab 2</div>
|
|
419
|
+
</Swiper.Item>
|
|
420
|
+
<Swiper.Item>
|
|
421
|
+
<div style={contentStyle}>Tab 3</div>
|
|
422
|
+
</Swiper.Item>
|
|
423
|
+
</Swiper>
|
|
424
|
+
</>
|
|
425
|
+
)
|
|
426
|
+
}
|
|
427
|
+
export default Demo12
|
|
428
|
+
|
|
429
|
+
```
|
|
430
|
+
|
|
431
|
+
### CSS 粘性布局
|
|
432
|
+
|
|
433
|
+
通过设置tab的style 例如:`tabStyle={{ position: 'sticky', top: '0px', zIndex: 11 }}` ,来实现Css的粘性布局,注意:在微信小程序里组件外层元素不能存在 overflow 为 `hidden`、`auto`、`scroll`的设置。
|
|
434
|
+
|
|
435
|
+
|
|
436
|
+
```tsx
|
|
437
|
+
import { Tabs } from '@mijadesign/mjui-react-taro'
|
|
438
|
+
import React, { useState } from 'react'
|
|
439
|
+
|
|
440
|
+
const Demo13 = () => {
|
|
441
|
+
const [tab2value, setTab2value] = useState<string | number>('0')
|
|
442
|
+
return (
|
|
443
|
+
<>
|
|
444
|
+
<Tabs
|
|
445
|
+
value={tab2value}
|
|
446
|
+
tabStyle={{ position: 'sticky', top: '-18px', zIndex: 11, background: '#fff' }}
|
|
447
|
+
onChange={(value) => {
|
|
448
|
+
setTab2value(value)
|
|
449
|
+
}}
|
|
450
|
+
>
|
|
451
|
+
<Tabs.TabPane title="Tab 1">
|
|
452
|
+
<p>Tab 1</p>
|
|
453
|
+
<p>Tab 1</p>
|
|
454
|
+
<p>Tab 1</p>
|
|
455
|
+
<p>Tab 1</p>
|
|
456
|
+
<p>Tab 1</p>
|
|
457
|
+
<p>Tab 1</p>
|
|
458
|
+
<p>Tab 1</p>
|
|
459
|
+
<p>Tab 1</p>
|
|
460
|
+
</Tabs.TabPane>
|
|
461
|
+
<Tabs.TabPane title="Tab 2">
|
|
462
|
+
<p>Tab 2</p>
|
|
463
|
+
<p>Tab 2</p>
|
|
464
|
+
<p>Tab 2</p>
|
|
465
|
+
<p>Tab 2</p>
|
|
466
|
+
<p>Tab 2</p>
|
|
467
|
+
<p>Tab 2</p>
|
|
468
|
+
<p>Tab 2</p>
|
|
469
|
+
<p>Tab 2</p>
|
|
470
|
+
</Tabs.TabPane>
|
|
471
|
+
<Tabs.TabPane title="Tab 3"> Tab 3 </Tabs.TabPane>
|
|
472
|
+
</Tabs>
|
|
473
|
+
</>
|
|
474
|
+
)
|
|
475
|
+
}
|
|
476
|
+
export default Demo13
|
|
477
|
+
|
|
478
|
+
```
|
|
479
|
+
|
|
480
|
+
### Tabpane 自动高度
|
|
481
|
+
|
|
482
|
+
自动高度。设置为 true 时,nut-tabs 和 nut-tabs\_\_content 会随着当前 nut-tabpane 的高度而发生变化。
|
|
483
|
+
|
|
484
|
+
|
|
485
|
+
```tsx
|
|
486
|
+
import React, { useState } from 'react'
|
|
487
|
+
import { Tabs } from '@mijadesign/mjui-react-taro'
|
|
488
|
+
|
|
489
|
+
const Demo14 = () => {
|
|
490
|
+
const [tab2value, setTab2value] = useState<string | number>('0')
|
|
491
|
+
return (
|
|
492
|
+
<>
|
|
493
|
+
<Tabs
|
|
494
|
+
value={tab2value}
|
|
495
|
+
autoHeight
|
|
496
|
+
onChange={(value) => {
|
|
497
|
+
setTab2value(value)
|
|
498
|
+
}}
|
|
499
|
+
>
|
|
500
|
+
<Tabs.TabPane title="Tab 1">
|
|
501
|
+
<p>Tab 1</p>
|
|
502
|
+
<p>Tab 1</p>
|
|
503
|
+
<p>Tab 1</p>
|
|
504
|
+
<p>Tab 1</p>
|
|
505
|
+
</Tabs.TabPane>
|
|
506
|
+
<Tabs.TabPane title="Tab 2"> Tab 2 </Tabs.TabPane>
|
|
507
|
+
<Tabs.TabPane title="Tab 3"> Tab 3 </Tabs.TabPane>
|
|
508
|
+
</Tabs>
|
|
509
|
+
</>
|
|
510
|
+
)
|
|
511
|
+
}
|
|
512
|
+
export default Demo14
|
|
513
|
+
|
|
514
|
+
```
|
|
515
|
+
|
|
516
|
+
### 数据异步渲染 3s
|
|
517
|
+
|
|
518
|
+
|
|
519
|
+
```tsx
|
|
520
|
+
import React, { useState, useEffect } from 'react'
|
|
521
|
+
import { Tabs } from '@mijadesign/mjui-react-taro'
|
|
522
|
+
|
|
523
|
+
const Demo15 = () => {
|
|
524
|
+
const [tab3value, setTab3value] = useState<string | number>(0)
|
|
525
|
+
const [list3, setList3] = useState<number[]>([])
|
|
526
|
+
useEffect(() => {
|
|
527
|
+
setTimeout(() => {
|
|
528
|
+
setTab3value(2)
|
|
529
|
+
setList3([...new Array(3).keys()])
|
|
530
|
+
}, 3000)
|
|
531
|
+
}, [])
|
|
532
|
+
return (
|
|
533
|
+
<>
|
|
534
|
+
<Tabs
|
|
535
|
+
value={tab3value}
|
|
536
|
+
onChange={(value) => {
|
|
537
|
+
setTab3value(value)
|
|
538
|
+
}}
|
|
539
|
+
>
|
|
540
|
+
{list3.map((item) => (
|
|
541
|
+
<Tabs.TabPane key={item} title={`Tab ${item}`}>
|
|
542
|
+
Tab {item}
|
|
543
|
+
</Tabs.TabPane>
|
|
544
|
+
))}
|
|
545
|
+
</Tabs>
|
|
546
|
+
</>
|
|
547
|
+
)
|
|
548
|
+
}
|
|
549
|
+
export default Demo15
|
|
550
|
+
|
|
551
|
+
```
|
|
552
|
+
|
|
553
|
+
### 数量多,滚动操作
|
|
554
|
+
|
|
555
|
+
|
|
556
|
+
```tsx
|
|
557
|
+
import { Tabs } from '@mijadesign/mjui-react-taro'
|
|
558
|
+
import React, { useState } from 'react'
|
|
559
|
+
|
|
560
|
+
const Demo16 = () => {
|
|
561
|
+
const [tab4value, setTab4value] = useState<string | number>('0')
|
|
562
|
+
return (
|
|
563
|
+
<>
|
|
564
|
+
<Tabs
|
|
565
|
+
value={tab4value}
|
|
566
|
+
onChange={(value) => {
|
|
567
|
+
setTab4value(value)
|
|
568
|
+
}}
|
|
569
|
+
>
|
|
570
|
+
<Tabs.TabPane title="选项">选项1</Tabs.TabPane>
|
|
571
|
+
<Tabs.TabPane title="选项">选项2</Tabs.TabPane>
|
|
572
|
+
<Tabs.TabPane title="选项">选项3</Tabs.TabPane>
|
|
573
|
+
<Tabs.TabPane title="选项">选项4</Tabs.TabPane>
|
|
574
|
+
<Tabs.TabPane title="选项">选项5</Tabs.TabPane>
|
|
575
|
+
<Tabs.TabPane title="选项">选项6</Tabs.TabPane>
|
|
576
|
+
</Tabs>
|
|
577
|
+
</>
|
|
578
|
+
)
|
|
579
|
+
}
|
|
580
|
+
export default Demo16
|
|
581
|
+
|
|
582
|
+
```
|
|
583
|
+
|
|
584
|
+
### 数量多,滚动操作 2
|
|
585
|
+
|
|
586
|
+
|
|
587
|
+
```tsx
|
|
588
|
+
import React, { useState } from 'react'
|
|
589
|
+
import { Tabs } from '@mijadesign/mjui-react-taro'
|
|
590
|
+
|
|
591
|
+
const Demo17 = () => {
|
|
592
|
+
const [tab4value, setTab4value] = useState<string | number>('0')
|
|
593
|
+
const list4 = Array.from(new Array(10).keys())
|
|
594
|
+
return (
|
|
595
|
+
<>
|
|
596
|
+
<Tabs
|
|
597
|
+
value={tab4value}
|
|
598
|
+
style={{ height: '300px' }}
|
|
599
|
+
onChange={(value) => {
|
|
600
|
+
setTab4value(value)
|
|
601
|
+
}}
|
|
602
|
+
direction="vertical"
|
|
603
|
+
>
|
|
604
|
+
{list4.map((item) => (
|
|
605
|
+
<Tabs.TabPane key={item} title={`Tab ${item}`}>
|
|
606
|
+
Tab {item}
|
|
607
|
+
</Tabs.TabPane>
|
|
608
|
+
))}
|
|
609
|
+
</Tabs>
|
|
610
|
+
</>
|
|
611
|
+
)
|
|
612
|
+
}
|
|
613
|
+
export default Demo17
|
|
614
|
+
|
|
615
|
+
```
|
|
616
|
+
|
|
617
|
+
### 左右布局
|
|
618
|
+
|
|
619
|
+
|
|
620
|
+
```tsx
|
|
621
|
+
import React, { useState } from 'react'
|
|
622
|
+
import { Tabs } from '@mijadesign/mjui-react-taro'
|
|
623
|
+
|
|
624
|
+
const Demo18 = () => {
|
|
625
|
+
const [tab5value, setTab5value] = useState<string | number>('0')
|
|
626
|
+
const list5 = Array.from(new Array(2).keys())
|
|
627
|
+
return (
|
|
628
|
+
<>
|
|
629
|
+
<Tabs
|
|
630
|
+
style={{ height: '300px' }}
|
|
631
|
+
value={tab5value}
|
|
632
|
+
onChange={(value) => {
|
|
633
|
+
setTab5value(value)
|
|
634
|
+
}}
|
|
635
|
+
direction="vertical"
|
|
636
|
+
>
|
|
637
|
+
{list5.map((item) => (
|
|
638
|
+
<Tabs.TabPane key={item} title={`Tab ${item}`}>
|
|
639
|
+
Tab {item}
|
|
640
|
+
</Tabs.TabPane>
|
|
641
|
+
))}
|
|
642
|
+
</Tabs>
|
|
643
|
+
</>
|
|
644
|
+
)
|
|
645
|
+
}
|
|
646
|
+
export default Demo18
|
|
647
|
+
|
|
648
|
+
```
|
|
649
|
+
|
|
650
|
+
### 左右布局-微笑曲线
|
|
651
|
+
|
|
652
|
+
|
|
653
|
+
```tsx
|
|
654
|
+
import React, { useState } from 'react'
|
|
655
|
+
import { Tabs } from '@mijadesign/mjui-react-taro'
|
|
656
|
+
|
|
657
|
+
const Demo19 = () => {
|
|
658
|
+
const [tab6value, setTab6value] = useState<string | number>('0')
|
|
659
|
+
const list5 = Array.from(new Array(2).keys())
|
|
660
|
+
return (
|
|
661
|
+
<>
|
|
662
|
+
<Tabs
|
|
663
|
+
style={{ height: '300px' }}
|
|
664
|
+
value={tab6value}
|
|
665
|
+
onChange={(value) => {
|
|
666
|
+
setTab6value(value)
|
|
667
|
+
}}
|
|
668
|
+
direction="vertical"
|
|
669
|
+
>
|
|
670
|
+
{list5.map((item) => (
|
|
671
|
+
<Tabs.TabPane key={item} title={`Tab ${item}`}>
|
|
672
|
+
Tab {item}
|
|
673
|
+
</Tabs.TabPane>
|
|
674
|
+
))}
|
|
675
|
+
</Tabs>
|
|
676
|
+
</>
|
|
677
|
+
)
|
|
678
|
+
}
|
|
679
|
+
export default Demo19
|
|
680
|
+
|
|
681
|
+
```
|
|
682
|
+
|
|
683
|
+
### 嵌套布局
|
|
684
|
+
|
|
685
|
+
|
|
686
|
+
```tsx
|
|
687
|
+
import React, { useState } from 'react'
|
|
688
|
+
import { Tabs } from '@mijadesign/mjui-react-taro'
|
|
689
|
+
|
|
690
|
+
const Demo20 = () => {
|
|
691
|
+
const [tab8value, setTab8value] = useState<string | number>('0')
|
|
692
|
+
const [tab9value, setTab9value] = useState<string | number>('0')
|
|
693
|
+
return (
|
|
694
|
+
<>
|
|
695
|
+
<Tabs
|
|
696
|
+
value={tab8value}
|
|
697
|
+
onChange={(value) => {
|
|
698
|
+
setTab8value(value)
|
|
699
|
+
}}
|
|
700
|
+
direction="vertical"
|
|
701
|
+
>
|
|
702
|
+
<Tabs.TabPane title="Tab 1">
|
|
703
|
+
<Tabs
|
|
704
|
+
value={tab9value}
|
|
705
|
+
onChange={(value) => {
|
|
706
|
+
setTab9value(value)
|
|
707
|
+
}}
|
|
708
|
+
direction="horizontal"
|
|
709
|
+
>
|
|
710
|
+
<Tabs.TabPane title="Tab 1"> Tab 1 </Tabs.TabPane>
|
|
711
|
+
<Tabs.TabPane title="Tab 2"> Tab 2 </Tabs.TabPane>
|
|
712
|
+
<Tabs.TabPane title="Tab 3"> Tab 3 </Tabs.TabPane>
|
|
713
|
+
</Tabs>
|
|
714
|
+
</Tabs.TabPane>
|
|
715
|
+
<Tabs.TabPane title="Tab 2"> Tab 2 </Tabs.TabPane>
|
|
716
|
+
<Tabs.TabPane title="Tab 3"> Tab 3 </Tabs.TabPane>
|
|
717
|
+
</Tabs>
|
|
718
|
+
</>
|
|
719
|
+
)
|
|
720
|
+
}
|
|
721
|
+
export default Demo20
|
|
722
|
+
|
|
723
|
+
```
|
|
724
|
+
|
|
725
|
+
### 嵌套布局 2
|
|
726
|
+
|
|
727
|
+
|
|
728
|
+
```tsx
|
|
729
|
+
import React, { useState } from 'react'
|
|
730
|
+
import { Tabs } from '@mijadesign/mjui-react-taro'
|
|
731
|
+
|
|
732
|
+
const Demo21 = () => {
|
|
733
|
+
const [tab8value, setTab8value] = useState<string | number>('0')
|
|
734
|
+
const [tab9value, setTab9value] = useState<string | number>('0')
|
|
735
|
+
return (
|
|
736
|
+
<>
|
|
737
|
+
<Tabs
|
|
738
|
+
value={tab8value}
|
|
739
|
+
onChange={(value) => {
|
|
740
|
+
setTab8value(value)
|
|
741
|
+
}}
|
|
742
|
+
autoHeight
|
|
743
|
+
>
|
|
744
|
+
<Tabs.TabPane title="Tab 1">
|
|
745
|
+
<Tabs
|
|
746
|
+
value={tab9value}
|
|
747
|
+
onChange={(value) => {
|
|
748
|
+
setTab9value(value)
|
|
749
|
+
}}
|
|
750
|
+
direction="vertical"
|
|
751
|
+
>
|
|
752
|
+
<Tabs.TabPane title="Tab 1"> Tab 1 </Tabs.TabPane>
|
|
753
|
+
<Tabs.TabPane title="Tab 2"> Tab 2 </Tabs.TabPane>
|
|
754
|
+
<Tabs.TabPane title="Tab 3"> Tab 3 </Tabs.TabPane>
|
|
755
|
+
</Tabs>
|
|
756
|
+
</Tabs.TabPane>
|
|
757
|
+
<Tabs.TabPane title="Tab 2"> Tab 2 </Tabs.TabPane>
|
|
758
|
+
<Tabs.TabPane title="Tab 3"> Tab 3 </Tabs.TabPane>
|
|
759
|
+
</Tabs>
|
|
760
|
+
</>
|
|
761
|
+
)
|
|
762
|
+
}
|
|
763
|
+
export default Demo21
|
|
764
|
+
|
|
765
|
+
```
|
|
766
|
+
|
|
767
|
+
### Title 字体尺寸: 20px 12px
|
|
768
|
+
|
|
769
|
+
|
|
770
|
+
```tsx
|
|
771
|
+
import React, { useState } from 'react'
|
|
772
|
+
import { Tabs } from '@mijadesign/mjui-react-taro'
|
|
773
|
+
|
|
774
|
+
const Demo22 = () => {
|
|
775
|
+
const [tab1value, setTab1value] = useState<string | number>('0')
|
|
776
|
+
return (
|
|
777
|
+
<>
|
|
778
|
+
<Tabs
|
|
779
|
+
value={tab1value}
|
|
780
|
+
onChange={(value) => {
|
|
781
|
+
setTab1value(value)
|
|
782
|
+
}}
|
|
783
|
+
style={{ '--nutui-tabs-titles-font-size': '20px' }}
|
|
784
|
+
>
|
|
785
|
+
<Tabs.TabPane title="Tab 1"> Tab 1 </Tabs.TabPane>
|
|
786
|
+
<Tabs.TabPane title="Tab 2"> Tab 2 </Tabs.TabPane>
|
|
787
|
+
<Tabs.TabPane title="Tab 3"> Tab 3 </Tabs.TabPane>
|
|
788
|
+
</Tabs>
|
|
789
|
+
<Tabs
|
|
790
|
+
value={tab1value}
|
|
791
|
+
onChange={(value) => {
|
|
792
|
+
setTab1value(value)
|
|
793
|
+
}}
|
|
794
|
+
style={{ '--nutui-tabs-titles-font-size': '12px' }}
|
|
795
|
+
>
|
|
796
|
+
<Tabs.TabPane title="Tab 1"> Tab 1 </Tabs.TabPane>
|
|
797
|
+
<Tabs.TabPane title="Tab 2"> Tab 2 </Tabs.TabPane>
|
|
798
|
+
<Tabs.TabPane title="Tab 3"> Tab 3 </Tabs.TabPane>
|
|
799
|
+
</Tabs>
|
|
800
|
+
</>
|
|
801
|
+
)
|
|
802
|
+
}
|
|
803
|
+
export default Demo22
|
|
804
|
+
|
|
805
|
+
```
|
|
806
|
+
|
|
807
|
+
### 自定义标签栏
|
|
808
|
+
|
|
809
|
+
|
|
810
|
+
```tsx
|
|
811
|
+
import { Image, Tabs } from '@mijadesign/mjui-react-taro'
|
|
812
|
+
import React, { useState } from 'react'
|
|
813
|
+
|
|
814
|
+
const Demo23 = () => {
|
|
815
|
+
const items = [
|
|
816
|
+
{
|
|
817
|
+
label: '选项',
|
|
818
|
+
key: 'c1',
|
|
819
|
+
icon: (
|
|
820
|
+
<Image
|
|
821
|
+
style={{ width: '28px', height: '28px' }}
|
|
822
|
+
src="https://sblp-oss.mibaodata.com/static/front-end/components/tabsDemoIcon.png"
|
|
823
|
+
/>
|
|
824
|
+
),
|
|
825
|
+
},
|
|
826
|
+
{
|
|
827
|
+
label: '选项',
|
|
828
|
+
key: 'c2',
|
|
829
|
+
},
|
|
830
|
+
{
|
|
831
|
+
label: '选项',
|
|
832
|
+
key: 'c3',
|
|
833
|
+
},
|
|
834
|
+
]
|
|
835
|
+
const [value1, setValue1] = useState<any>('c1')
|
|
836
|
+
const items1 = [
|
|
837
|
+
{
|
|
838
|
+
label: (
|
|
839
|
+
<Image
|
|
840
|
+
style={{ width: '117px', height: '48px' }}
|
|
841
|
+
src={
|
|
842
|
+
value1 === 'c1'
|
|
843
|
+
? 'https://sblp-oss.mibaodata.com/static/front-end/components/tabsDemoActive.png'
|
|
844
|
+
: 'https://sblp-oss.mibaodata.com/static/front-end/components/tabsDemo.png'
|
|
845
|
+
}
|
|
846
|
+
/>
|
|
847
|
+
),
|
|
848
|
+
key: 'c1',
|
|
849
|
+
},
|
|
850
|
+
{
|
|
851
|
+
label: '选项',
|
|
852
|
+
key: 'c2',
|
|
853
|
+
},
|
|
854
|
+
{
|
|
855
|
+
label: '选项',
|
|
856
|
+
key: 'c3',
|
|
857
|
+
},
|
|
858
|
+
]
|
|
859
|
+
|
|
860
|
+
return (
|
|
861
|
+
<div>
|
|
862
|
+
<Tabs
|
|
863
|
+
items={items1}
|
|
864
|
+
value={value1}
|
|
865
|
+
onChange={(key) => {
|
|
866
|
+
setValue1(key)
|
|
867
|
+
}}
|
|
868
|
+
/>
|
|
869
|
+
<Tabs defaultValue="c1" items={items} />
|
|
870
|
+
</div>
|
|
871
|
+
)
|
|
872
|
+
}
|
|
873
|
+
export default Demo23
|
|
874
|
+
|
|
875
|
+
```
|
|
876
|
+
|
|
877
|
+
## Tabs
|
|
878
|
+
|
|
879
|
+
### Props
|
|
880
|
+
|
|
881
|
+
| 属性 | 说明 | 类型 | 默认值 |
|
|
882
|
+
| --- | --- | --- | --- |
|
|
883
|
+
| value | 当前激活 tab 面板的值 | `number` \| `string` | `0` |
|
|
884
|
+
| defaultValue | 初始化激活 tab 的值 | `number` \| `string` | `0` |
|
|
885
|
+
| activeColor | 标签选中色 | `string` | `#1a1a1a` |
|
|
886
|
+
| direction | 使用横纵方向 | `horizontal` \| `vertical` | `horizontal` |
|
|
887
|
+
| activeType | 选中底部展示样式 可选值 `line`、`smile`、`simple`、`card`、`button`、`divider` | `line` \| `smile` \| `simple` \| `card` \| `button`\| `divider` | `line` |
|
|
888
|
+
| duration | 切换动画时长,单位 ms 0 代表无动画 | `number` \| `string` | `300` |
|
|
889
|
+
| title | 自定义导航区域 | `() => JSX.Element[]` | `-` |
|
|
890
|
+
| align | 标题对齐方式 | `left` \| `right` | `-` |
|
|
891
|
+
| autoHeight | 自动高度。设置为 true 时,nut-tabs 和 nut-tabs\_\_content 会随着当前 nut-tabpane 的高度而发生变化。 | `boolean` | `false` |
|
|
892
|
+
| tabStyle | 标签栏样式 | `CSSProperties` | `{}` |
|
|
893
|
+
| items | 配置选项卡内容 | `Array<TabItemType>` | `` |
|
|
894
|
+
| fixWidth | 宽度是否固定 | `boolean` | `false` |
|
|
895
|
+
| onClick | 点击标签时触发 | `(index: string\| number) => void` | `-` |
|
|
896
|
+
| onChange | 当前激活的标签改变时触发 | `(index: string \| number) => void` | `-` |
|
|
897
|
+
|
|
898
|
+
### TabItemType
|
|
899
|
+
| 属性 | 说明 | 类型 | 默认值 |
|
|
900
|
+
| --- | --- | --- | --- |
|
|
901
|
+
| label | 标题 | `React.ReactNode` | `-` |
|
|
902
|
+
| key | 标签 Key , 匹配的标识符, 默认为索引值 | `string` \| `number` | `-` |
|
|
903
|
+
| icon | 标签 Key , 匹配的标识符, 默认为索引值 | `React.ReactNode` | `-` |
|
|
904
|
+
| disabled | 是否禁用标签 | `boolean` | `false` |
|
|
905
|
+
| children | 选项内容 | `React.ReactNode` | `-` |
|
|
906
|
+
|
|
907
|
+
## Tabs.Tabpane
|
|
908
|
+
|
|
909
|
+
### Props
|
|
910
|
+
|
|
911
|
+
| 属性 | 说明 | 类型 | 默认值 |
|
|
912
|
+
| --- | --- | --- | --- |
|
|
913
|
+
| title | 标题 | `string` | `-` |
|
|
914
|
+
| value | 标签 Key , 匹配的标识符, 默认为索引值 | `string` \| `number` | `-` |
|
|
915
|
+
| disabled | 是否禁用标签 | `boolean` | `false` |
|
|
916
|
+
|
|
917
|
+
|
|
918
|
+
## 主题定制
|
|
919
|
+
|
|
920
|
+
### 样式变量
|
|
921
|
+
|
|
922
|
+
组件提供了下列 CSS 变量,可用于自定义样式,使用方法请参考 [ConfigProvider 组件](#/zh-CN/component/configprovider)。
|
|
923
|
+
|
|
924
|
+
| 名称 | 说明 | 默认值 |
|
|
925
|
+
| --- | --- | --- |
|
|
926
|
+
| \--nutui-tabs-button-active-background-color | Tab 选中标题的背景色 | `$color-background` |
|
|
927
|
+
| \--nutui-tabs-button-active-border | Tab 选中标题的边框色 | `1px solid $color-primary` |
|
|
928
|
+
| \--nutui-tabs-button-border-radius | 按钮模式的按钮的圆角 | `32px` |
|
|
929
|
+
| \--nutui-tabs-line-border-radius | 水平方向线的圆角 | `3px` |
|
|
930
|
+
| \--nutui-tabs-line-bottom | 水平方向线条距离 | `2px` |
|
|
931
|
+
| \--nutui-tabs-tab-button-font-size | 按钮模式的按钮字号 | `$font-size-2` |
|
|
932
|
+
| \--nutui-tabs-tab-line-color | 水平方向线条颜色 | `$color-primary` |
|
|
933
|
+
| \--nutui-tabs-tab-line-height | 水平方向激活选项卡线条的高度 | `4px` |
|
|
934
|
+
| \--nutui-tabs-tab-line-opacity | 水平方向线的透明度 | `1` |
|
|
935
|
+
| \--nutui-tabs-tab-line-width | 水平方向激活选项卡线条的宽度 | `28px` |
|
|
936
|
+
| \--nutui-tabs-tabpane-background-color | Tabpane 的背景色 | `#fff` |
|
|
937
|
+
| \--nutui-tabs-tabpane-padding | Tabpane 的内边距 | `$spacing-3` |
|
|
938
|
+
| \--nutui-tabs-title-gap | Tab 标题的左右 margin | `0px` |
|
|
939
|
+
| \--nutui-tabs-titles-background-color | Tab 标题的背景色 | `transparent` |
|
|
940
|
+
| \--nutui-tabs-titles-font-size | Tab 标题的字号 | `$font-size-3` |
|
|
941
|
+
| \--nutui-tabs-titles-gap | 标题内容之间的左右 margin | `$spacing-3` |
|
|
942
|
+
| \--nutui-tabs-titles-height | 水平方向标题的高度 | `48px` |
|
|
943
|
+
| \--nutui-tabs-titles-icon-font-size | 标题处icon的字号 | `28px` |
|
|
944
|
+
| \--nutui-tabs-titles-item-active-background-color | 水平方向激活选项卡标题的背景色 | `$color-background-overlay` |
|
|
945
|
+
| \--nutui-tabs-titles-item-active-color | Tab 选中标题的字色 | `$color-primary` |
|
|
946
|
+
| \--nutui-tabs-titles-item-active-font-size | Tab 选中标题的字号 | `$font-size-3` |
|
|
947
|
+
| \--nutui-tabs-titles-item-active-font-weight | Tab 选中标题的字重 | `$font-weight-bold` |
|
|
948
|
+
| \--nutui-tabs-titles-item-color | Tab 标题的字色 | `$color-title` |
|
|
949
|
+
| \--nutui-tabs-titles-item-min-width | 水平方向标题的最小宽度 | `34px` |
|
|
950
|
+
| \--nutui-tabs-titles-item-smile-bottom | smile 方向线条距离 | `-10%` |
|
|
951
|
+
| \--nutui-tabs-vertical-tab-line-color | 垂直方向线条颜色 | `linear-gradient(180deg, $color-primary 0%, rgba(#FF0F23, 0.15) 100%)` |
|
|
952
|
+
| \--nutui-tabs-vertical-tab-line-height | 垂直方向标题线条的高度 | `12px` |
|
|
953
|
+
| \--nutui-tabs-vertical-tab-line-width | 垂直方向标题线条的宽度 | `3px` |
|
|
954
|
+
| \--nutui-tabs-vertical-titles-item-height | 垂直方向标题的高度 | `40px` |
|
|
955
|
+
| \--nutui-tabs-vertical-titles-width | 垂直方向标题的宽度 | `100px` |
|