docs(button-edit): add button-edit features

This commit is contained in:
Sagi 2022-10-05 08:03:59 +08:00
parent 16350ab3fa
commit c614e40404
4 changed files with 68 additions and 5 deletions

View File

@ -11,7 +11,7 @@ export function useTextBox(props: ButtonEditProps, context: SetupContext, modelV
let focusState = false; let focusState = false;
const hasFocusedTextBox = computed(() => focusState); const hasFocusedTextBox = computed(() => !props.disable && focusState);
const textBoxClass = computed(() => ({ const textBoxClass = computed(() => ({
'text-left': props.textAlign === 'left', 'text-left': props.textAlign === 'left',
@ -48,6 +48,7 @@ export function useTextBox(props: ButtonEditProps, context: SetupContext, modelV
function onFocusTextBox($event: Event) { function onFocusTextBox($event: Event) {
if (props.disable) { if (props.disable) {
focusState = true;
return; return;
} }
focusState = true; focusState = true;

View File

@ -3,6 +3,8 @@ import Switch from './src/switch.component';
export * from './src/switch.props'; export * from './src/switch.props';
export { Switch };
export default { export default {
install(app: App): void { install(app: App): void {
app.component(Switch.name, Switch); app.component(Switch.name, Switch);

View File

@ -1,5 +1,6 @@
// import farris from '../../../components/index'; // import farris from '../../../components/index';
import buttonEdit from '../../../components/button-edit'; import ButtonEdit from '../../../components/button-edit';
import Switch from '../../../components/switch';
import DefaultTheme from 'vitepress/theme'; import DefaultTheme from 'vitepress/theme';
import 'vitepress-theme-demoblock/theme/styles/index.css'; import 'vitepress-theme-demoblock/theme/styles/index.css';
import { registerComponents } from './register-components.js'; import { registerComponents } from './register-components.js';
@ -9,7 +10,7 @@ import '../../../public/assets/farris-all.css';
export default { export default {
...DefaultTheme, ...DefaultTheme,
enhanceApp({ app }) { enhanceApp({ app }) {
app.use(buttonEdit); app.use(ButtonEdit).use(Switch);
registerComponents(app); registerComponents(app);
} }
}; };

View File

@ -12,11 +12,11 @@ import { ref } from 'vue';
const text = ref(''); const text = ref('');
</script> </script>
<template> <template>
<f-button-edit v-model="text"></f-button-edit> <div class="my-2">
<div style="margin-top:1rem">
<span>输入框文本: </span> <span>输入框文本: </span>
<span>{{ text }}</span> <span>{{ text }}</span>
</div> </div>
<f-button-edit v-model="text"></f-button-edit>
</template> </template>
``` ```
@ -26,10 +26,69 @@ const text = ref('');
## 状态 ## 状态
:::demo
```vue
<script setup lang="ts">
import { ref } from 'vue';
const text = ref('Button Edit 按钮输入框');
const editable = ref(false);
const disable = ref(true);
const readonly = ref(true);
</script>
<template>
<div class="my-2">
<span>默认状态: </span>
</div>
<f-button-edit v-model="text"></f-button-edit>
<div class="my-2">
<span>只读状态: </span>
</div>
<f-button-edit :readonly="readonly" v-model="text"></f-button-edit>
<div class="my-2">
<span>不可编辑状态: </span>
</div>
<f-button-edit :editable="editable" v-model="text"></f-button-edit>
<div class="my-2">
<span>禁用状态: </span>
</div>
<f-button-edit :disable="disable" v-model="text"></f-button-edit>
</template>
```
:::
## 按钮 ## 按钮
## 清空按钮 ## 清空按钮
:::demo 使用清空按钮可以快速置空文本框。
```vue
<script setup lang="ts">
import { ref } from 'vue';
const text = ref('Button Edit 按钮输入框');
const enableClear = ref(true);
</script>
<template>
<div class="my-2">
<span>默认状态: </span>
<f-switch v-model="enableClear"></f-switch>
</div>
<f-button-edit :enable-clear="enableClear" v-model="text"></f-button-edit>
<div class="my-2">
<span>只读状态: </span>
</div>
<f-button-edit :enable-clear="enableClear" readonly v-model="text"></f-button-edit>
<div class="my-2">
<span>禁用状态: </span>
</div>
<f-button-edit :enable-clear="enableClear" disable v-model="text"></f-button-edit>
</template>
```
:::
## 文本标签 ## 文本标签
## 提示信息 ## 提示信息