tiny-vue
tiny-vue copied to clipboard
TinyVue is an enterprise-class UI component library of OpenTiny community, support both Vue.js 2 and Vue.js 3, as well as PC and mobile.
### Version latest ### Vue Version 3 ### Link to minimal reproduction ``` import { Checkbox, CheckboxGroup } from '@opentiny/vue' export default { components: { TinyCheckbox: Checkbox, TinyCheckboxGroup: CheckboxGroup },...
### Version 3.x ### Vue Version 3.16 ### Link to minimal reproduction ```bash https://opentiny.design/vue-playground?mode=pc&theme=default#3.16|eyJzcmMvQXBwLnZ1ZSI6IjxzY3JpcHQgbGFuZz1cInRzeFwiPlxuLy8g5byV5YWlIEBvcGVudGlueS92dWUg57uE5Lu2XG5pbXBvcnQgeyBCdXR0b24sIExpbmsgfSBmcm9tICdAb3BlbnRpbnkvdnVlJ1xuXG5leHBvcnQgZGVmYXVsdCB7XG4gIGNvbXBvbmVudHM6IHtcbiAgICBUaW55QnV0dG9uOiBCdXR0b24sXG4gICAgVGlueUxpbms6IExpbmtcbiAgfSxcbiAgZGF0YSgpIHtcbiAgICByZXR1cm4ge1xuICAgICAgbXNnOiAnaGVsbG8gd29ybGQhJ1xuICAgIH1cbiAgfVxufVxuPC9zY3JpcHQ+XG5cbjx0ZW1wbGF0ZT5cbiAgPFRpbnlCdXR0b24+56Gu5a6aPC9UaW55QnV0dG9uPlxuICA8aDE+e3sgbXNnIH19PC9oMT5cbiAgPGRpdiBjbGFzcz1cInRpbnl2dWVcIj5cbiAgICA8ZGl2IGNsYXNzPVwidGlueXZ1ZS1wYWdlXCI+XG4gICAgICB0aW55dnVlXG4gICAgICA8dGlueS1saW5rIHR5cGU9XCJzdWNjZXNzXCIgaHJlZj0naHR0cHM6Ly9naXRodWIuY29tL29wZW50aW55L3RpbnktdnVlJz5cbiAgICAgICAgdGlueXZ1ZVxuICAgICAgPC90aW55LWxpbms+XG4gICAgPC9kaXY+XG4gIDwvZGl2PlxuPC90ZW1wbGF0ZT5cblxuPHN0eWxlIGxhbmc9XCJsZXNzXCIgc2NvcGVkPlxuICBoMXtcbiAgICBjb2xvcjojNWU3Y2UwO1xuICB9XG4gIC50aW55dnVle1xuICAgIGZvbnQtc2l6ZTogMTh4cDtcbiAgICAmLXBhZ2V7XG4gICAgICBjb2xvcjojNWU3Y2UwO1xuICAgIH1cbiAgfVxuPC9zdHlsZT5cbiIsIiI6IntcImltcG9ydHNcIjp7XCJ2dWVcIjpcImh0dHBzOi8vcmVnaXN0cnkubnBtbWlycm9yLmNvbS92dWUvMy40LjI3L2ZpbGVzL2Rpc3QvdnVlLnJ1bnRpbWUuZXNtLWJyb3dzZXIuanNcIixcIkB2dWUvY29tcGlsZXItc2ZjXCI6XCJodHRwczovL3JlZ2lzdHJ5Lm5wbW1pcnJvci5jb20vQHZ1ZS9jb21waWxlci1zZmMvMy40LjI3L2ZpbGVzL2Rpc3QvY29tcGlsZXItc2ZjLmVzbS1icm93c2VyLmpzXCIsXCJAb3BlbnRpbnkvdnVlXCI6XCJodHRwczovL3JlZ2lzdHJ5Lm5wbW1pcnJvci5jb20vQG9wZW50aW55L3Z1ZS8zLjE2L2ZpbGVzL3J1bnRpbWUvdGlueS12dWUubWpzXCIsXCJAb3BlbnRpbnkvdnVlLWljb25cIjpcImh0dHBzOi8vcmVnaXN0cnkubnBtbWlycm9yLmNvbS9Ab3BlbnRpbnkvdnVlLzMuMTYvZmlsZXMvcnVudGltZS90aW55LXZ1ZS1pY29uLm1qc1wiLFwiQG9wZW50aW55L3Z1ZS1sb2NhbGVcIjpcImh0dHBzOi8vcmVnaXN0cnkubnBtbWlycm9yLmNvbS9Ab3BlbnRpbnkvdnVlLzMuMTYvZmlsZXMvcnVudGltZS90aW55LXZ1ZS1sb2NhbGUubWpzXCIsXCJAb3BlbnRpbnkvdnVlLWNvbW1vblwiOlwiaHR0cHM6Ly9yZWdpc3RyeS5ucG1taXJyb3IuY29tL0BvcGVudGlueS92dWUvMy4xNi9maWxlcy9ydW50aW1lL3RpbnktdnVlLWNvbW1vbi5tanNcIixcIkBvcGVudGlueS92dWUtdGhlbWUvXCI6XCJodHRwczovL3JlZ2lzdHJ5Lm5wbW1pcnJvci5jb20vQG9wZW50aW55L3Z1ZS10aGVtZS8zLjE2L2ZpbGVzL1wiLFwiQG9wZW50aW55L3Z1ZS10aGVtZS1tb2JpbGUvXCI6XCJodHRwczovL3JlZ2lzdHJ5Lm5wbW1pcnJvci5jb20vQG9wZW50aW55L3Z1ZS10aGVtZS1tb2JpbGUvMy4xNi9maWxlcy9cIixcIkBvcGVudGlueS92dWUtcmVuZGVybGVzcy9cIjpcImh0dHBzOi8vcmVnaXN0cnkubnBtbWlycm9yLmNvbS9Ab3BlbnRpbnkvdnVlLXJlbmRlcmxlc3MvMy4xNi9maWxlcy9cIixcInNvcnRhYmxlanNcIjpcImh0dHBzOi8vcmVnaXN0cnkubnBtbWlycm9yLmNvbS9zb3J0YWJsZWpzLzEuMTUuMC9maWxlcy9tb2R1bGFyL3NvcnRhYmxlLmVzbS5qc1wifX0iLCJ0c2NvbmZpZy5qc29uIjoie1xyXG4gIFwiY29tcGlsZXJPcHRpb25zXCI6IHtcclxuICAgIFwiYWxsb3dKc1wiOiB0cnVlLFxyXG4gICAgXCJjaGVja0pzXCI6IHRydWUsXHJcbiAgICBcImpzeFwiOiBcInByZXNlcnZlXCIsXHJcbiAgICBcInRhcmdldFwiOiBcIkVTTmV4dFwiLFxyXG4gICAgXCJtb2R1bGVcIjogXCJFU05leHRcIixcclxuICAgIFwibW9kdWxlUmVzb2x1dGlvblwiOiBcIkJ1bmRsZXJcIixcclxuICAgIFwiYWxsb3dJbXBvcnRpbmdUc0V4dGVuc2lvbnNcIjogdHJ1ZVxyXG4gIH0sXHJcbiAgXCJ2dWVDb21waWxlck9wdGlvbnNcIjoge1xyXG4gICAgXCJ0YXJnZXRcIjogMy4zXHJcbiAgfVxyXG59XHJcbiIsInNpemUudnVlIjoiPHRlbXBsYXRlPlxuICA8ZGl2PlxuICAgIDxwPm1pbmk8L3A+XG4gICAgPHRpbnktc2VsZWN0IHYtbW9kZWw9XCJ2YWx1ZTRcIiBzaXplPVwibWluaVwiIGhvdmVyLWV4cGFuZCBtdWx0aXBsZSA6b3B0aW9ucz1cIm9wdGlvbnNcIj4gPC90aW55LXNlbGVjdD5cbiAgPC9kaXY+XG48L3RlbXBsYXRlPlxuXG48c2NyaXB0PlxuaW1wb3J0IHsgU2VsZWN0IH0gZnJvbSAnQG9wZW50aW55L3Z1ZSdcblxuZXhwb3J0IGRlZmF1bHQge1xuICBjb21wb25lbnRzOiB7XG4gICAgVGlueVNlbGVjdDogU2VsZWN0XG4gIH0sXG4gIGRhdGEoKSB7XG4gICAgcmV0dXJuIHtcbiAgICAgIG9wdGlvbnM6IFtcbiAgICAgICAgeyB2YWx1ZTogJ+mAiemhuTEnLCBsYWJlbDogJ+WMl+S6rCcgfSxcbiAgICAgICAgeyB2YWx1ZTogJ+mAiemhuTInLCBsYWJlbDogJ+S4iua1tycgfSxcbiAgICAgICAgeyB2YWx1ZTogJ+mAiemhuTMnLCBsYWJlbDogJ+Wkqea0pScgfSxcbiAgICAgICAgeyB2YWx1ZTogJ+mAiemhuTQnLCBsYWJlbDogJ+mHjeW6hicgfSxcbiAgICAgICAgeyB2YWx1ZTogJ+mAiemhuTUnLCBsYWJlbDogJ+a3seWcsycgfVxuICAgICAgXSxcbiAgICAgIHZhbHVlMTogWyfpgInpobkxJywgJ+mAiemhuTInXSxcbiAgICAgIHZhbHVlMjogWyfpgInpobkxJywgJ+mAiemhuTInXSxcbiAgICAgIHZhbHVlMzogWyfpgInpobkxJywgJ+mAiemhuTInXSxcbiAgICAgIHZhbHVlNDogWyfpgInpobkxJywgJ+mAiemhuTInXVxuICAgIH1cbiAgfVxufVxuPC9zY3JpcHQ+XG5cbjxzdHlsZSBsYW5nPVwibGVzc1wiIHNjb3BlZD5cbi50aW55LXNlbGVjdCB7XG4gIHdpZHRoOiAyODBweDtcbn1cbnAge1xuICBmb250LXNpemU6IDE0cHg7XG4gIGxpbmUtaGVpZ2h0OiAxLjU7XG59XG48L3N0eWxlPlxuIiwiX28iOnt9fQ== ``` ### Step to reproduce ```vue ``` ### What is expected 高度不变化 ### What is actually...
### Version 3.11.1 ### Vue Version 3.3.7 ### Link to minimal reproduction ```html {{ data.label }} ``` ```JavaScript //省略右键菜单步骤,row为选中编辑的节点data,_id为节点唯一标识 const treeRef = ref(null) const node = treeRef.value.getNode(row._id); treeRef.value.editNode(node); ``` ###...
### Version 3.16 ### Vue Version 3.x ### Link to minimal reproduction ```bash https://opentiny.design/vue-playground?mode=pc&theme=smb#3.16|eyJzcmMvQXBwLnZ1ZSI6IjxzY3JpcHQgbGFuZz1cInRzeFwiPlxyXG4vLyDlvJXlhaUgQG9wZW50aW55L3Z1ZSDnu4Tku7ZcclxuaW1wb3J0IHsgQnV0dG9uLCBMaW5rIH0gZnJvbSAnQG9wZW50aW55L3Z1ZSdcclxuXHJcbmV4cG9ydCBkZWZhdWx0IHtcclxuICBjb21wb25lbnRzOiB7XHJcbiAgICBUaW55QnV0dG9uOiBCdXR0b24sXHJcbiAgICBUaW55TGluazogTGlua1xyXG4gIH0sXHJcbiAgZGF0YSgpIHtcclxuICAgIHJldHVybiB7XHJcbiAgICAgIG1zZzogJ2hlbGxvIHdvcmxkISdcclxuICAgIH1cclxuICB9XHJcbn1cclxuPC9zY3JpcHQ+XHJcblxyXG48dGVtcGxhdGU+XHJcbiAgPFRpbnlCdXR0b24+56Gu5a6aPC9UaW55QnV0dG9uPlxyXG4gIDxoMT57eyBtc2cgfX08L2gxPlxyXG4gIDxkaXYgY2xhc3M9XCJ0aW55dnVlXCI+XHJcbiAgICA8ZGl2IGNsYXNzPVwidGlueXZ1ZS1wYWdlXCI+XHJcbiAgICAgIHRpbnl2dWVcclxuICAgICAgPHRpbnktbGluayB0eXBlPVwic3VjY2Vzc1wiIGhyZWY9J2h0dHBzOi8vZ2l0aHViLmNvbS9vcGVudGlueS90aW55LXZ1ZSc+XHJcbiAgICAgICAgdGlueXZ1ZVxyXG4gICAgICA8L3RpbnktbGluaz5cclxuICAgIDwvZGl2PlxyXG4gIDwvZGl2PlxyXG48L3RlbXBsYXRlPlxyXG5cclxuPHN0eWxlIGxhbmc9XCJsZXNzXCIgc2NvcGVkPlxyXG4gIGgxe1xyXG4gICAgY29sb3I6IzVlN2NlMDtcclxuICB9XHJcbiAgLnRpbnl2dWV7XHJcbiAgICBmb250LXNpemU6IDE4eHA7XHJcbiAgICAmLXBhZ2V7XHJcbiAgICAgIGNvbG9yOiM1ZTdjZTA7XHJcbiAgICB9XHJcbiAgfVxyXG48L3N0eWxlPlxyXG4iLCIiOiJ7XCJpbXBvcnRzXCI6e1widnVlXCI6XCJodHRwczovL3JlZ2lzdHJ5Lm5wbW1pcnJvci5jb20vdnVlLzMuNC4yNy9maWxlcy9kaXN0L3Z1ZS5ydW50aW1lLmVzbS1icm93c2VyLmpzXCIsXCJAdnVlL2NvbXBpbGVyLXNmY1wiOlwiaHR0cHM6Ly9yZWdpc3RyeS5ucG1taXJyb3IuY29tL0B2dWUvY29tcGlsZXItc2ZjLzMuNC4yNy9maWxlcy9kaXN0L2NvbXBpbGVyLXNmYy5lc20tYnJvd3Nlci5qc1wiLFwiQG9wZW50aW55L3Z1ZVwiOlwiaHR0cHM6Ly9yZWdpc3RyeS5ucG1taXJyb3IuY29tL0BvcGVudGlueS92dWUvMy4xNi9maWxlcy9ydW50aW1lL3RpbnktdnVlLm1qc1wiLFwiQG9wZW50aW55L3Z1ZS1pY29uXCI6XCJodHRwczovL3JlZ2lzdHJ5Lm5wbW1pcnJvci5jb20vQG9wZW50aW55L3Z1ZS8zLjE2L2ZpbGVzL3J1bnRpbWUvdGlueS12dWUtaWNvbi5tanNcIixcIkBvcGVudGlueS92dWUtbG9jYWxlXCI6XCJodHRwczovL3JlZ2lzdHJ5Lm5wbW1pcnJvci5jb20vQG9wZW50aW55L3Z1ZS8zLjE2L2ZpbGVzL3J1bnRpbWUvdGlueS12dWUtbG9jYWxlLm1qc1wiLFwiQG9wZW50aW55L3Z1ZS1jb21tb25cIjpcImh0dHBzOi8vcmVnaXN0cnkubnBtbWlycm9yLmNvbS9Ab3BlbnRpbnkvdnVlLzMuMTYvZmlsZXMvcnVudGltZS90aW55LXZ1ZS1jb21tb24ubWpzXCIsXCJAb3BlbnRpbnkvdnVlLXRoZW1lL1wiOlwiaHR0cHM6Ly9yZWdpc3RyeS5ucG1taXJyb3IuY29tL0BvcGVudGlueS92dWUtdGhlbWUvMy4xNi9maWxlcy9cIixcIkBvcGVudGlueS92dWUtdGhlbWUtbW9iaWxlL1wiOlwiaHR0cHM6Ly9yZWdpc3RyeS5ucG1taXJyb3IuY29tL0BvcGVudGlueS92dWUtdGhlbWUtbW9iaWxlLzMuMTYvZmlsZXMvXCIsXCJAb3BlbnRpbnkvdnVlLXJlbmRlcmxlc3MvXCI6XCJodHRwczovL3JlZ2lzdHJ5Lm5wbW1pcnJvci5jb20vQG9wZW50aW55L3Z1ZS1yZW5kZXJsZXNzLzMuMTYvZmlsZXMvXCIsXCJzb3J0YWJsZWpzXCI6XCJodHRwczovL3JlZ2lzdHJ5Lm5wbW1pcnJvci5jb20vc29ydGFibGVqcy8xLjE1LjAvZmlsZXMvbW9kdWxhci9zb3J0YWJsZS5lc20uanNcIixcIkBvcGVudGlueS92dWUtZGVzaWduLXNtYlwiOlwiaHR0cHM6Ly9yZWdpc3RyeS5ucG1taXJyb3IuY29tL0BvcGVudGlueS92dWUtZGVzaWduLXNtYi8zLjE2L2ZpbGVzL2luZGV4LmpzXCJ9fSIsInRzY29uZmlnLmpzb24iOiJ7XHJcbiAgXCJjb21waWxlck9wdGlvbnNcIjoge1xyXG4gICAgXCJhbGxvd0pzXCI6IHRydWUsXHJcbiAgICBcImNoZWNrSnNcIjogdHJ1ZSxcclxuICAgIFwianN4XCI6IFwicHJlc2VydmVcIixcclxuICAgIFwidGFyZ2V0XCI6IFwiRVNOZXh0XCIsXHJcbiAgICBcIm1vZHVsZVwiOiBcIkVTTmV4dFwiLFxyXG4gICAgXCJtb2R1bGVSZXNvbHV0aW9uXCI6IFwiQnVuZGxlclwiLFxyXG4gICAgXCJhbGxvd0ltcG9ydGluZ1RzRXh0ZW5zaW9uc1wiOiB0cnVlXHJcbiAgfSxcclxuICBcInZ1ZUNvbXBpbGVyT3B0aW9uc1wiOiB7XHJcbiAgICBcInRhcmdldFwiOiAzLjNcclxuICB9XHJcbn1cclxuIiwiY2xlYXItbm8tbWF0Y2gtdmFsdWUudnVlIjoiPHRlbXBsYXRlPlxuICA8ZGl2PlxuICAgIDxwPlxuICAgICAg5Zy65pmvMe+8muWNlemAie+8jHZhbCDmib7kuI3liLDljLnphY3lgLzvvIx2YWzkuLrvvJogLDxzcGFuIGNsYXNzPVwidmFsXCI+e3sgdmFsIH19PC9zcGFuPlxuICAgIDwvcD5cbiAgICA8dGlueS1zZWxlY3Qgdi1tb2RlbD1cInZhbFwiIDpjbGVhci1uby1tYXRjaC12YWx1ZT1cInRydWVcIj5cbiAgICAgIDx0aW55LW9wdGlvbiB2LWZvcj1cIml0ZW0gaW4gb3B0aW9uc1wiIDprZXk9XCJpdGVtLnZhbHVlXCIgOmxhYmVsPVwiaXRlbS5sYWJlbFwiIDp2YWx1ZT1cIml0ZW0udmFsdWVcIj4gPC90aW55LW9wdGlvbj5cbiAgICA8L3Rpbnktc2VsZWN0PlxuICA8L2Rpdj5cbjwvdGVtcGxhdGU+XG5cbjxzY3JpcHQ+XG5pbXBvcnQgeyBTZWxlY3QsIE9wdGlvbiB9IGZyb20gJ0BvcGVudGlueS92dWUnXG5cbmV4cG9ydCBkZWZhdWx0IHtcbiAgY29tcG9uZW50czoge1xuICAgIFRpbnlTZWxlY3Q6IFNlbGVjdCxcbiAgICBUaW55T3B0aW9uOiBPcHRpb25cbiAgfSxcbiAgZGF0YSgpIHtcbiAgICByZXR1cm4ge1xuICAgICAgb3B0aW9uczogW1xuICAgICAgICB7IHZhbHVlOiAn6YCJ6aG5MScsIGxhYmVsOiAn5YyX5LqsJyB9LFxuICAgICAgICB7IHZhbHVlOiAn6YCJ6aG5MicsIGxhYmVsOiAn5LiK5rW3JyB9LFxuICAgICAgICB7IHZhbHVlOiAn6YCJ6aG5MycsIGxhYmVsOiAn5aSp5rSlJyB9LFxuICAgICAgICB7IHZhbHVlOiAn6YCJ6aG5NCcsIGxhYmVsOiAn6YeN5bqGJyB9LFxuICAgICAgICB7IHZhbHVlOiAn6YCJ6aG5NScsIGxhYmVsOiAn5rex5ZyzJyB9XG4gICAgICBdLFxuICAgICAgdmFsOiAnJyxcbiAgICB9XG4gIH1cbn1cbjwvc2NyaXB0PlxuXG48c3R5bGUgbGFuZz1cImxlc3NcIiBzY29wZWQ+XG4udGlueS1zZWxlY3Qge1xuICB3aWR0aDogMjgwcHg7XG59XG5wIHtcbiAgZm9udC1zaXplOiAxNHB4O1xuICBsaW5lLWhlaWdodDogMS41O1xufVxuPC9zdHlsZT5cbiIsIl9vIjp7fX0= ``` ### Step to reproduce ```vue ``` ### What is expected clear-no-match-value应该对值为空的情况特殊处理一下 ### What is actually...
### Vue Version 3 ### Link to minimal reproduction 用户头像 确 定 取 消 ### Step to reproduce 用户头像 确 定 取 消 ### What is expected _No response_ ###...
右侧弹窗与折叠框配合使用,当折叠框全展开,弹窗body不支持滚动条上下查看折叠框展开的内容 ### Version 3.10.0 ### Vue Version 3.2.47 ### Link to minimal reproduction ``` 右侧弹窗 标题区 与现实生活一致:与现实生活的流程、逻辑保持一致,遵循用户习惯的语言和概念; 在界面中一致:所有的元素和结构需保持一致,比如:设计样式、图标和文本、元素的位置等。 控制反馈:通过界面样式和交互动效让用户可以清晰的感知自己的操作; 页面反馈:操作后,通过页面元素的变化清晰地展现当前状态。 简化流程:设计简洁直观的操作流程; 清晰明确:语言表达清晰且表意明确,让用户快速理解进而作出决策; 帮助用户识别:界面简单直白,让用户快速识别而非回忆,减少用户记忆负担。 用户决策:根据场景可给予用户操作建议或安全提示,但不能代替用户进行决策; 结果可控:用户可以自由的进行操作,包括撤销、回退和终止当前操作等。 与现实生活一致:与现实生活的流程、逻辑保持一致,遵循用户习惯的语言和概念; 在界面中一致:所有的元素和结构需保持一致,比如:设计样式、图标和文本、元素的位置等。 控制反馈:通过界面样式和交互动效让用户可以清晰的感知自己的操作; 页面反馈:操作后,通过页面元素的变化清晰地展现当前状态。 简化流程:设计简洁直观的操作流程;...
### What problem does this feature solve  ### What does the proposed API look like - ### What is your project name 1
### What problem does this feature solve 有些场景下请求的数据为空时希望有一个可以便携调用的空状态反馈组件,一方面可以适配全局主题,给用户更加美观的体验 ### What does the proposed API look like 类似Element的ElEmpty那样 ### What is your project name 基于tiny-pro二开的后台管理系统
### What problem does this feature solve 您好,请问有没有可能出一版设计资源,sketch的组件库文件。 ### What does the proposed API look like 
### What problem does this feature solve 我希望可以让TimeSelect的图标也可以放在前面,如图  ### What does the proposed API look like 新增prefix-icon属性用来自定义前置图标 ### What is your project name todolist