docs(NumberKeyboard): use composition api

This commit is contained in:
chenjiahan 2020-12-13 13:50:16 +08:00
parent 75f8e36923
commit f66dcdc8c0
3 changed files with 92 additions and 68 deletions

View File

@ -25,21 +25,24 @@ app.use(NumberKeyboard);
``` ```
```js ```js
import { ref } from 'vue';
import { Toast } from 'vant'; import { Toast } from 'vant';
export default { export default {
data() { setup() {
return { const show = ref(true);
show: true, const onInput = (value) => {
};
},
methods: {
onInput(value) {
Toast(value); Toast(value);
}, };
onDelete() { const onDelete = () => {
Toast('delete'); Toast('delete');
}, };
return {
show,
onInput,
onDelete,
};
}, },
}; };
``` ```
@ -125,11 +128,15 @@ Use `title` prop to set keyboard title.
``` ```
```js ```js
import { ref } from 'vue';
export default { export default {
data() { setup() {
const show = ref(true);
const value = ref('');
return { return {
show: false, show,
value: '', value,
}; };
}, },
}; };

View File

@ -31,21 +31,24 @@ app.use(NumberKeyboard);
``` ```
```js ```js
import { ref } from 'vue';
import { Toast } from 'vant'; import { Toast } from 'vant';
export default { export default {
data() { setup() {
return { const show = ref(true);
show: true, const onInput = (value) => {
};
},
methods: {
onInput(value) {
Toast(value); Toast(value);
}, };
onDelete() { const onDelete = () => {
Toast('删除'); Toast('删除');
}, };
return {
show,
onInput,
onDelete,
};
}, },
}; };
``` ```
@ -138,11 +141,15 @@ export default {
``` ```
```js ```js
import { ref } from 'vue';
export default { export default {
data() { setup() {
const show = ref(true);
const value = ref('');
return { return {
show: false, show,
value: '', value,
}; };
}, },
}; };

View File

@ -77,54 +77,64 @@
/> />
</template> </template>
<script> <script lang="ts">
export default { import { reactive, toRefs } from 'vue';
i18n: { import { useTranslate } from '@demo/use-translate';
'zh-CN': { import Toast from '../../toast';
close: '完成',
input: '输入',
title: '键盘标题',
button1: '弹出默认键盘',
button2: '弹出带右侧栏的键盘',
button3: '弹出身份证号键盘',
button4: '弹出带标题的键盘',
button5: '弹出配置多个按键的键盘',
bindValue: '双向绑定',
clickToInput: '点此输入',
extraKey: '左下角按键内容',
multiExtraKey: '配置多个按键',
},
'en-US': {
close: 'Close',
input: 'Input',
title: 'Keyboard Title',
button1: 'Show Default Keyboard',
button2: 'Show Keyboard With Sidebar',
button3: 'Show IdNumber Keyboard',
button4: 'Show Keyboard With Title',
button5: 'Show Keyboard With Multiple ExtraKey',
bindValue: 'Bind Value',
clickToInput: 'Click To Input',
extraKey: 'IdNumber Keyboard',
multiExtraKey: 'Multiple ExtraKey',
},
},
data() { const i18n = {
return { 'zh-CN': {
close: '完成',
input: '输入',
title: '键盘标题',
button1: '弹出默认键盘',
button2: '弹出带右侧栏的键盘',
button3: '弹出身份证号键盘',
button4: '弹出带标题的键盘',
button5: '弹出配置多个按键的键盘',
bindValue: '双向绑定',
clickToInput: '点此输入',
extraKey: '左下角按键内容',
multiExtraKey: '配置多个按键',
},
'en-US': {
close: 'Close',
input: 'Input',
title: 'Keyboard Title',
button1: 'Show Default Keyboard',
button2: 'Show Keyboard With Sidebar',
button3: 'Show IdNumber Keyboard',
button4: 'Show Keyboard With Title',
button5: 'Show Keyboard With Multiple ExtraKey',
bindValue: 'Bind Value',
clickToInput: 'Click To Input',
extraKey: 'IdNumber Keyboard',
multiExtraKey: 'Multiple ExtraKey',
},
};
export default {
setup() {
const t = useTranslate(i18n);
const state = reactive({
value: '', value: '',
keyboard: 'default', keyboard: 'default',
});
const onInput = (value: string) => {
Toast(`${t('input')}: ${value}`);
}; };
},
methods: { const onDelete = () => {
onInput(value) { Toast(t('delete'));
this.$toast(`${this.t('input')}: ${value}`); };
},
onDelete() { return {
this.$toast(this.t('delete')); ...toRefs(state),
}, t,
onInput,
onDelete,
};
}, },
}; };
</script> </script>