diff --git a/Web/Vue/CubeLib/README.md b/Web/Vue/CubeLib/README.md
index 249df76..e77bd9f 100644
--- a/Web/Vue/CubeLib/README.md
+++ b/Web/Vue/CubeLib/README.md
@@ -22,15 +22,217 @@ yarn add joyd.web.vue.cubelib
## 使用
-```javascript
-import { CubeButton } from 'joyd.web.vue.cubelib'
+### 全局注册
-app.use(CubeButton)
+```javascript
+import { createApp } from 'vue'
+import App from './App.vue'
+import CubeLib from 'joyd.web.vue.cubelib'
+
+const app = createApp(App)
+app.use(CubeLib)
+app.mount('#app')
```
-## 文档
+### 按需导入
-查看 [在线文档](https://docs.joyd.com) 获取详细的使用说明和示例。
+```javascript
+import { CubeButton, CubeSplitter } from 'joyd.web.vue.cubelib'
+
+// 在组件中使用
+export default {
+ components: {
+ CubeButton,
+ CubeSplitter
+ }
+}
+```
+
+## 组件文档
+
+### CubeButton
+
+按钮组件,提供基本的按钮样式和交互功能。
+
+#### Props
+
+- `variant`: 按钮变体,可选值:`primary`, `secondary`, `outline`, `ghost`
+- `size`: 按钮尺寸,可选值:`sm`, `md`, `lg`
+- `disabled`: 是否禁用按钮
+
+#### Events
+
+- `click`: 点击按钮时触发
+
+### CubeSplitter
+
+可调整大小的分隔条组件,用于在布局中创建可调整大小的面板。
+
+#### Props
+
+- `direction`: 分隔条方向,可选值:`vertical` (垂直), `horizontal` (水平)
+- `position`: 分隔条位置,可选值:`left`, `right`, `top`, `bottom`
+- `initialSize`: 初始尺寸
+- `minSize`: 最小尺寸
+- `maxSize`: 最大尺寸
+
+#### Events
+
+- `resize`: 调整大小时触发
+- `resizeEnd`: 调整大小结束时触发
+- `collapse`: 折叠面板时触发
+- `expand`: 展开面板时触发
+
+#### 使用示例
+
+```vue
+
+
+
+
+
+
+
+```
+
+#### CSS 变量
+
+CubeSplitter 组件支持通过 CSS 变量进行定制:
+
+```css
+:root {
+ --cube-splitter-color: #e0e0e0;
+ --cube-splitter-hover-color: #667eea;
+ --cube-splitter-active-color: #5568d3;
+ --cube-splitter-handle-color: #fff;
+ --cube-splitter-handle-shadow: 0 0 4px rgba(0, 0, 0, 0.2);
+ --cube-splitter-collapsing-color: #667eea;
+ --cube-splitter-collapsing-shadow: 0 0 10px rgba(102, 126, 234, 0.5);
+ --cube-splitter-transition-speed: 0.3s;
+}
+```
+
+## 常见问题解答
+
+### Q: 如何保存分隔条的位置?
+
+A: 可以使用 `@resize-end` 事件来保存最终的尺寸到 localStorage 或其他存储中,然后在组件挂载时从存储中加载。
+
+### Q: 如何在最小尺寸和当前尺寸之间切换?
+
+A: 单击分隔条的句柄即可在最小尺寸和当前尺寸之间切换。
+
+### Q: 为什么右侧分隔条的拖拽方向与左侧不同?
+
+A: CubeSplitter 组件统一了拖拽方向逻辑:向左/上拖动减小尺寸,向右/下拖动增大尺寸,无论分隔条位置是左还是右。
## 贡献
diff --git a/Web/Vue/CubeLib/src/components/CubeSplitter.vue b/Web/Vue/CubeLib/src/components/CubeSplitter.vue
new file mode 100644
index 0000000..5f3aa2a
--- /dev/null
+++ b/Web/Vue/CubeLib/src/components/CubeSplitter.vue
@@ -0,0 +1,426 @@
+
+
+
+
+
+
+
\ No newline at end of file
diff --git a/Web/Vue/CubeLib/src/index.ts b/Web/Vue/CubeLib/src/index.ts
index 9925f5d..7b9c635 100644
--- a/Web/Vue/CubeLib/src/index.ts
+++ b/Web/Vue/CubeLib/src/index.ts
@@ -1,8 +1,10 @@
import { App, defineComponent } from 'vue'
import CubeButton from './components/CubeButton.vue'
+import CubeSplitter from './components/CubeSplitter.vue'
const components = {
- CubeButton
+ CubeButton,
+ CubeSplitter
}
const install = (app: App) => {
@@ -17,4 +19,4 @@ const CubeLib = {
}
export default CubeLib
-export { CubeButton }
\ No newline at end of file
+export { CubeButton, CubeSplitter }
\ No newline at end of file