docs(Field): use composition api

This commit is contained in:
chenjiahan 2020-12-09 14:06:36 +08:00
parent 2f40e23be9
commit b423259f45
11 changed files with 117 additions and 66 deletions

View File

@ -23,11 +23,12 @@ The value of field is bound with v-model.
``` ```
```js ```js
import { ref } from 'vue';
export default { export default {
data() { setup() {
return { const value = ref('');
value: '', return { value };
};
}, },
}; };
``` ```
@ -45,14 +46,20 @@ Use `type` prop to custom different type fields.
``` ```
```js ```js
import { reactive, toRefs } from 'vue';
export default { export default {
data() { setup() {
return { const state = reactive({
tel: '', tel: '',
text: '', text: '',
digit: '', digit: '',
number: '', number: '',
password: '', password: '',
});
return {
...toRefs(state),
}; };
}, },
}; };
@ -89,11 +96,17 @@ export default {
``` ```
```js ```js
import { reactive, toRefs } from 'vue';
export default { export default {
data() { setup() {
return { const state = reactive({
value1: '', value1: '',
value2: '123', value2: '123',
});
return {
...toRefs(state),
}; };
}, },
}; };
@ -155,18 +168,21 @@ Use `formatter` prop to format the input value.
``` ```
```js ```js
import { reactive, toRefs } from 'vue';
export default { export default {
data() { setup() {
return { const state = reactive({
value1: '', value1: '',
value2: '', value2: '',
});
const formatter = (value) => value.replace(/\d/g, '');
return {
...toRefs(state),
formatter,
}; };
}, },
methods: {
formatter(value) {
return value.replace(/\d/g, '');
},
},
}; };
``` ```

View File

@ -28,11 +28,12 @@ app.use(Field);
``` ```
```js ```js
import { ref } from 'vue';
export default { export default {
data() { setup() {
return { const value = ref('');
value: '', return { value };
};
}, },
}; };
``` ```
@ -55,14 +56,20 @@ export default {
``` ```
```js ```js
import { reactive, toRefs } from 'vue';
export default { export default {
data() { setup() {
return { const state = reactive({
tel: '', tel: '',
text: '', text: '',
digit: '', digit: '',
number: '', number: '',
password: '', password: '',
});
return {
...toRefs(state),
}; };
}, },
}; };
@ -105,11 +112,17 @@ export default {
``` ```
```js ```js
import { reactive, toRefs } from 'vue';
export default { export default {
data() { setup() {
return { const state = reactive({
value1: '', value1: '',
value2: '123', value2: '123',
});
return {
...toRefs(state),
}; };
}, },
}; };
@ -177,18 +190,21 @@ export default {
``` ```
```js ```js
import { reactive, toRefs } from 'vue';
export default { export default {
data() { setup() {
return { const state = reactive({
value1: '', value1: '',
value2: '', value2: '',
}; });
},
methods: {
formatter(value) {
// 过滤输入的数字 // 过滤输入的数字
return value.replace(/\d/g, ''); const formatter = (value) => value.replace(/\d/g, '');
},
return {
...toRefs(state),
formatter,
};
}, },
}; };
``` ```

View File

@ -12,6 +12,8 @@
</template> </template>
<script> <script>
import { ref } from 'vue';
export default { export default {
i18n: { i18n: {
'zh-CN': { 'zh-CN': {
@ -26,10 +28,9 @@ export default {
}, },
}, },
data() { setup() {
return { const value = ref('');
value: '', return { value };
};
}, },
}; };
</script> </script>

View File

@ -11,6 +11,8 @@
</template> </template>
<script> <script>
import { ref } from 'vue';
export default { export default {
i18n: { i18n: {
'zh-CN': { 'zh-CN': {
@ -23,10 +25,9 @@ export default {
}, },
}, },
data() { setup() {
return { const value = ref('');
value: '', return { value };
};
}, },
}; };
</script> </script>

View File

@ -33,6 +33,8 @@
</template> </template>
<script> <script>
import { reactive, toRefs } from 'vue';
export default { export default {
i18n: { i18n: {
'zh-CN': { 'zh-CN': {
@ -62,13 +64,15 @@ export default {
}, },
data() { data() {
return { const state = reactive({
text: '', text: '',
phone: '', phone: '',
digit: '', digit: '',
number: '', number: '',
password: '', password: '',
}; });
return toRefs(state);
}, },
}; };
</script> </script>

View File

@ -18,6 +18,8 @@
</template> </template>
<script> <script>
import { reactive, toRefs } from 'vue';
export default { export default {
i18n: { i18n: {
'zh-CN': { 'zh-CN': {
@ -35,10 +37,12 @@ export default {
}, },
data() { data() {
return { const state = reactive({
phone: '123', phone: '123',
username: '', username: '',
}; });
return toRefs(state);
}, },
}; };
</script> </script>

View File

@ -17,6 +17,8 @@
</template> </template>
<script> <script>
import { reactive, toRefs } from 'vue';
export default { export default {
i18n: { i18n: {
'zh-CN': { 'zh-CN': {
@ -33,17 +35,17 @@ export default {
}, },
}, },
data() { setup() {
return { const state = reactive({
value1: '', value1: '',
value2: '', value2: '',
}; });
}, const formatter = (value) => value.replace(/\d/g, '');
methods: { return {
formatter(value) { ...toRefs(state),
return value.replace(/\d/g, ''); formatter,
}, };
}, },
}; };
</script> </script>

View File

@ -10,6 +10,8 @@
</template> </template>
<script> <script>
import { ref } from 'vue';
export default { export default {
i18n: { i18n: {
'zh-CN': { 'zh-CN': {
@ -24,10 +26,9 @@ export default {
}, },
}, },
data() { setup() {
return { const value = ref('');
value: '', return { value };
};
}, },
}; };
</script> </script>

View File

@ -17,6 +17,8 @@
</template> </template>
<script> <script>
import { ref } from 'vue';
export default { export default {
i18n: { i18n: {
'zh-CN': { 'zh-CN': {
@ -33,10 +35,9 @@ export default {
}, },
}, },
data() { setup() {
return { const sms = ref('');
sms: '', return { sms };
};
}, },
}; };
</script> </script>

View File

@ -18,6 +18,8 @@
</template> </template>
<script> <script>
import { reactive, toRefs } from 'vue';
export default { export default {
i18n: { i18n: {
'zh-CN': { 'zh-CN': {
@ -32,11 +34,13 @@ export default {
}, },
}, },
data() { setup() {
return { const state = reactive({
icon1: '', icon1: '',
icon2: '123', icon2: '123',
}; });
return toRefs(state);
}, },
}; };
</script> </script>

View File

@ -14,6 +14,8 @@
</template> </template>
<script> <script>
import { ref } from 'vue';
export default { export default {
i18n: { i18n: {
'zh-CN': { 'zh-CN': {
@ -28,10 +30,9 @@ export default {
}, },
}, },
data() { setup() {
return { const value = ref('');
value: '', return { value };
};
}, },
}; };
</script> </script>