Skip to content

Commit 8bc9b26

Browse files
authored
feat(TextEllipsis): add dots prop (youzan#11745)
* feat(TextEllipsis): add dots prop * chore: update snap
1 parent 949c535 commit 8bc9b26

File tree

3 files changed

+13
-10
lines changed

3 files changed

+13
-10
lines changed

packages/vant/src/text-ellipsis/README.md

Lines changed: 1 addition & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -91,6 +91,7 @@ export default {
9191
| content | The text displayed | _string_ | - |
9292
| expand-text | Expand operation text | _string_ | - |
9393
| collapse-text | Collapse operation text | _string_ | - |
94+
| dots | Text content of ellipsis | _string_ | `'...'` |
9495

9596
### Events
9697

packages/vant/src/text-ellipsis/README.zh-CN.md

Lines changed: 7 additions & 6 deletions
Original file line numberDiff line numberDiff line change
@@ -80,12 +80,13 @@ export default {
8080

8181
### Props
8282

83-
| 参数 | 说明 | 类型 | 默认值 |
84-
| ------------- | -------------- | ------------------ | ------ |
85-
| rows | 展示的行数 | _number \| string_ | `1` |
86-
| content | 需要展示的文本 | _string_ | - |
87-
| expand-text | 展开操作的文案 | _string_ | - |
88-
| collapse-text | 收起操作的文案 | _string_ | - |
83+
| 参数 | 说明 | 类型 | 默认值 |
84+
| ------------- | ---------------- | ------------------ | ------- |
85+
| rows | 展示的行数 | _number \| string_ | `1` |
86+
| content | 需要展示的文本 | _string_ | - |
87+
| expand-text | 展开操作的文案 | _string_ | - |
88+
| collapse-text | 收起操作的文案 | _string_ | - |
89+
| dots | 省略号的文本内容 | _string_ | `'...'` |
8990

9091
### Events
9192

packages/vant/src/text-ellipsis/TextEllipsis.tsx

Lines changed: 5 additions & 4 deletions
Original file line numberDiff line numberDiff line change
@@ -16,6 +16,7 @@ const [name, bem] = createNamespace('text-ellipsis');
1616

1717
export const textEllipsisProps = {
1818
rows: makeNumericProp(1),
19+
dots: makeStringProp('...'),
1920
content: makeStringProp(''),
2021
expandText: makeStringProp(''),
2122
collapseText: makeStringProp(''),
@@ -69,23 +70,23 @@ export default defineComponent({
6970
container: HTMLDivElement,
7071
maxHeight: number
7172
) => {
72-
const { content, expandText } = props;
73-
const dot = '...';
73+
const { dots, content, expandText } = props;
74+
7475
let left = 0;
7576
let right = content.length;
7677
let res = -1;
7778

7879
while (left <= right) {
7980
const mid = Math.floor((left + right) / 2);
80-
container.innerText = content.slice(0, mid) + dot + expandText;
81+
container.innerText = content.slice(0, mid) + dots + expandText;
8182
if (container.offsetHeight <= maxHeight) {
8283
left = mid + 1;
8384
res = mid;
8485
} else {
8586
right = mid - 1;
8687
}
8788
}
88-
return content.slice(0, res) + dot;
89+
return content.slice(0, res) + dots;
8990
};
9091

9192
const container = cloneContainer();

0 commit comments

Comments
 (0)