import{o as s,a,y as n}from"./vue-libs.b44bc779.js";const d={class:"van-doc-markdown-body"},e=n(`
\u7F16\u8F91\u5E76\u4FDD\u5B58\u8054\u7CFB\u4EBA\u4FE1\u606F\u3002
\u901A\u8FC7\u4EE5\u4E0B\u65B9\u5F0F\u6765\u5168\u5C40\u6CE8\u518C\u7EC4\u4EF6\uFF0C\u66F4\u591A\u6CE8\u518C\u65B9\u5F0F\u8BF7\u53C2\u8003\u7EC4\u4EF6\u6CE8\u518C\u3002
import { createApp } from 'vue';
import { ContactEdit } from 'vant';
const app = createApp();
app.use(ContactEdit);
<van-contact-edit
is-edit
show-set-default
:contact-info="editingContact"
set-default-label="\u8BBE\u4E3A\u9ED8\u8BA4\u8054\u7CFB\u4EBA"
@save="onSave"
@delete="onDelete"
/>
import { ref } from 'vue';
import { Toast } from 'vant';
export default {
setup() {
const editingContact = ref({
tel: '',
name: '',
});
const onSave = (contactInfo) => Toast('\u4FDD\u5B58');
const onDelete = (contactInfo) => Toast('\u5220\u9664');
return {
onSave,
onDelete,
editingContact,
};
},
};
\u53C2\u6570 | \u8BF4\u660E | \u7C7B\u578B | \u9ED8\u8BA4\u503C |
---|---|---|---|
contact-info | \u8054\u7CFB\u4EBA\u4FE1\u606F | Contact | {} |
is-edit | \u662F\u5426\u4E3A\u7F16\u8F91\u8054\u7CFB\u4EBA | boolean | false |
is-saving | \u662F\u5426\u663E\u793A\u4FDD\u5B58\u6309\u94AE\u52A0\u8F7D\u52A8\u753B | boolean | false |
is-deleting | \u662F\u5426\u663E\u793A\u5220\u9664\u6309\u94AE\u52A0\u8F7D\u52A8\u753B | boolean | false |
tel-validator | \u624B\u673A\u53F7\u683C\u5F0F\u6821\u9A8C\u51FD\u6570 | (tel: string) => boolean | - |
show-set-default | \u662F\u5426\u663E\u793A\u9ED8\u8BA4\u8054\u7CFB\u4EBA\u680F | boolean | false |
set-default-label | \u9ED8\u8BA4\u8054\u7CFB\u4EBA\u680F\u6587\u6848 | string | - |
\u4E8B\u4EF6\u540D | \u8BF4\u660E | \u56DE\u8C03\u53C2\u6570 |
---|---|---|
save | \u70B9\u51FB\u4FDD\u5B58\u6309\u94AE\u65F6\u89E6\u53D1 | content\uFF1A\u8868\u5355\u5185\u5BB9 |
delete | \u70B9\u51FB\u5220\u9664\u6309\u94AE\u65F6\u89E6\u53D1 | content\uFF1A\u8868\u5355\u5185\u5BB9 |
\u952E\u540D | \u8BF4\u660E | \u7C7B\u578B |
---|---|---|
name | \u8054\u7CFB\u4EBA\u59D3\u540D | string |
tel | \u8054\u7CFB\u4EBA\u624B\u673A\u53F7 | number | string |
\u7EC4\u4EF6\u5BFC\u51FA\u4EE5\u4E0B\u7C7B\u578B\u5B9A\u4E49\uFF1A
import type { ContactEditInfo, ContactEditProps } from 'vant';
\u7EC4\u4EF6\u63D0\u4F9B\u4E86\u4E0B\u5217 CSS \u53D8\u91CF\uFF0C\u53EF\u7528\u4E8E\u81EA\u5B9A\u4E49\u6837\u5F0F\uFF0C\u4F7F\u7528\u65B9\u6CD5\u8BF7\u53C2\u8003 ConfigProvider \u7EC4\u4EF6\u3002
\u540D\u79F0 | \u9ED8\u8BA4\u503C | \u63CF\u8FF0 |
---|---|---|
--van-contact-edit-padding | var(--van-padding-md) | - |
--van-contact-edit-fields-radius | var(--van-border-radius-md) | - |
--van-contact-edit-buttons-padding | var(--van-padding-xl) 0 | - |
--van-contact-edit-button-margin-bottom | var(--van-padding-sm) | - |
--van-contact-edit-button-font-size | var(--van-font-size-lg) | - |
--van-contact-edit-field-label-width | 4.1em | - |